Vite에서 모노레포 import

들어가며

모노레포 환경에서 업무를 진행하고 있었다. 여기에 Vite 환경으로 새롭게 프로젝트를 올리게 되었다. 그런데 모노레포로 작업된 다른 프로젝트들을 import 하지 못하는 이슈가 발생했다.

발생한 이유

Vite는 사전 번들링을 통해 빠른 성능을 제공한다. 이로 인해 의존성들이 사전에 묶이게 된다. 그런데 모노레포로 작업된 프로젝트들은 해당 번들링 과정에 포함이 안된다.

해결방법

친절하게 Vite에 해당 문제를 해결할 수 있는 방법을 제시해준다.

export default defineConfig({
   optimizeDeps: {
      include: ['linked-dep']
   },
   build: {
      commonjsOptions: {
         include: [/linked-dep/, /node_modules/]
      }
   }
})

Vite를 설장할때 나의 프로젝트들을 추가해두면 된다.

참고 자료

  1. Vite / 모노리포 디펜던시