🤍 전 강의 25% 할인 중 🤍

2024년 상반기를 돌아보고 하반기에도 함께 성장해요!
인프런이 준비한 25% 할인 받으러 가기 >>

  • 카테고리

    질문 & 답변
  • 세부 분야

    풀스택

  • 해결 여부

    미해결

라이브러리 배포에 관해서

21.08.20 02:08 작성 조회수 203

0

안녕하세요 제로초님!

제가 antd와 같은 디자인시스템을 만들고 싶어서 연구중인데요.

컴포넌트를 여러개 만들고 배포를 하는데 ejs 와 cjs 로 빌드를 떠서 배포를 하는데 antd의 경우 package.json에 module: ejs/index.js 를 지정해주고 main: lib/index.js 이런식으로 지정을 해두었더라구요. 그래서 생긴 궁금증은 작업중인 프로젝트의 상황에 맞춰 만약 작업중인 프로젝트가 ejs로 동작하면 해당 모듈을 임포트 할때 해당 모듈의 ejs를 참조해서 가져오고 만약 현재 작업중인 프로젝트가 commonJS로 동작하면 필요한 모듈의 cjs를 참조하는건가요? 이처럼 자동으로 감지해서 가져오는지 궁금합니다.

추가로 궁금한것은 제가 ejs로만 배포를 해서 CRA 프로젝트와 CRN 프로젝트 모두에서 임포트시켜서 사용하려니깐 CRA에서는 문제가 없었는데 CRN으로 생성한 프로젝트에서는  Unexpected token 'export' 에러와 Cannot use import statement outside a module 에러가 발생했습니다. 무엇이 원인일까요??

답변 1

답변을 작성해보세요.

0

commonjs면 main 경로를 참조하고, es6 모듈이면 module 경로를 참조합니다.

CRNA 말씀하시는건가요? react-native?

제가 봤을 때 CRNA에서만 에러나는 이유는 두 프로젝트의 설정이 달라서 그렇습니다. CRNA는 기본적으로 웹팩을 안 쓸겁니다. 바벨쪽에서 설정하는 걸로 알고 있습니다.

채널톡 아이콘