- app:templates에서 paths.mjs에 write: true를 부여하는 로컬 모듈 추가 - 루트 package.json imports로 .nuxt/paths.mjs 매핑 - nuxt ^3.21.2로 명시, 문서(v0.0.59) 반영 Co-authored-by: Cursor <cursoragent@cursor.com>
26 lines
854 B
JavaScript
26 lines
854 B
JavaScript
import { defineNuxtModule } from '@nuxt/kit'
|
|
|
|
/**
|
|
* Nuxt 3.21 SSR 번들이 `#internal/nuxt/paths`를 외부 모듈로 두는데,
|
|
* 기본 `paths.mjs` 템플릿은 `write: true`가 아니어서 `.nuxt/paths.mjs`가 디스크에 없고
|
|
* Node가 `package.json`의 `imports`로 해석할 실제 파일이 없어 오류가 난다.
|
|
* 동일 템플릿을 빌드 디렉터리에 기록하도록 한다.
|
|
* @param {unknown} _options - 모듈 옵션(미사용)
|
|
* @param {import('@nuxt/schema').Nuxt} nuxt - Nuxt 인스턴스
|
|
* @returns {void}
|
|
*/
|
|
export default defineNuxtModule({
|
|
meta: {
|
|
name: 'nuxt-ssr-paths-write'
|
|
},
|
|
setup(_options, nuxt) {
|
|
nuxt.hook('app:templates', (app) => {
|
|
for (const template of app.templates) {
|
|
if (template.filename === 'paths.mjs') {
|
|
template.write = true
|
|
}
|
|
}
|
|
})
|
|
}
|
|
})
|