View
반응형
기존 commonJS 모듈방식을 사용하다 ES module 방식으로 바꾸게되면 많은 에러를 만나게된다.
ES module 방식은 import/export 구문을 사용할 수 있게 해준다.
원래도 import/export 방식을 사용했다고해서 ES module 시스템을 사용하는 것은 아닐 수 있다.
마침 이번 feconf 에서 토스팀의 박서진 개발자님이 이 주제로 연사를 한 내용이 있어 첨부한다.
esm방식을 사용하기 위해선
package.json 파일에 모듈선언을 해야한다.
{
"type": "module"
}
{
"type": "commonjs"
}
타입 선언을 하고나면 현재 package.json 파일을 기준으로 하위에 있는 파일은 선언한 방식을 사용하게된다.
type: module
기존에 사용하던 module.exports 방식의 구문은 더이상 사용할 수 없게되는데
이때 __dirname 으로 사용되는 코드가 undefined 값이 나오는 것을 확인할 수있다.
import path from 'path;
const __dirname = path.resolve();
commonJS에서 사용되는 __dirname 변수가 esm에는 없기때문인데 위와 같이 import해서 사용하면 간단히 해결된다.
반응형
'소소버그잡기' 카테고리의 다른 글
ReactDOM.render 오류잡기 (0) | 2022.09.25 |
---|---|
react-hook-form, React.forwardRef() 에러 (0) | 2022.09.20 |
[React] styeld-components 를 함수내에 작성하면 이렇게 됩니다. (0) | 2022.08.15 |
React/ gh-pages로 배포어떻게 하는데... (0) | 2022.06.14 |
댓글