증상
../common-styles/src/index.ts
Module parse failed: Unexpected token (37:7)
You may need an appropriate loader to handle this file type, currently no loaders are configured to process this file. See https://webpack.js.org/concepts#loaders
| backgroundSkeleton,
| };
> export type { DesignColorSystem, ButtonTheme, ButtonThemes, Theme };
|
모노레포를 구성하였고 그 중 Next.js를 기반으로 동작하는 A라는 패키지가 있고
해당 패키지는 common-styles 라는 package를 dependencies 하고 있다.
common-styles라는 패키지를 A 패키지에 포함되어있었으나 분리한 뒤로 위와 같은 메세지가 발생하고 있다.
원인
common-styles 라는 패키지로 분리되기 전에는 next 내부에서 transpiling을 하였으나
common-styles 외부 패키지로 분리된 뒤로 따로 transpiling 하지 않아 발생하였다.
A 패키지의 next에서 common-styles 패키지를 로딩하기 위해서는 사전에 transpiling을 해줘야한다.
조치
next js에서 file을 로딩하기 전에 원하는 패키지를 사전에 transpiling 시켜주는 패키지를 추가해주면 된다.
https://www.npmjs.com/package/next-transpile-modules
/**
* 만약 다른 Plugin 같이 사용해야되는 경우 next-compose-plugins 사용하여 충돌 방지
*
* 아래는 @common/utils과 @common/styles라는 패키지를 사전에 transpiling 한다.
*/
const withTM = require('next-transpile-modules')(['@common/utils', '@common/styles']);
module.exports = withTM({
// 여기에 next config json을 넣어준다.
});
만약 기존에 다른 Plugin을 사용하고 있었다면 next-compose-plugins를 사용해주자
'Language & Library > React' 카테고리의 다른 글
[NEXT.js] 빌드 시 ERR_INVALID_ARG_TYPE 오류, 빌드 시 Freezing 증상 (0) | 2022.05.25 |
---|---|
Storybook에서 Failed to execute 'createElement' on 'Document' 에러 발생 (0) | 2021.09.08 |
Recoil SelectorFamily의 파라미터 사용 중 인덱스 시그니처 오류 발생 (with TypeScript) (2) | 2021.06.09 |
Recoil로 파라미터가 포함된 비동기 데이터 쿼리호출 (with TypeScript) (0) | 2021.06.02 |
Recoil의 설치 및 기본 개념 (0) | 2021.05.25 |
댓글