Files
sori.studio/modules/nuxt-ssr-paths-write.mjs
zenn ed7709ab59 fix(nuxt): Node용 #internal/nuxt/paths 해석 및 paths.mjs 디스크 기록
- 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>
2026-05-11 12:25:19 +09:00

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
}
}
})
}
})