Nuxt3のプロジェクトで初めてお目にかかるエラーが生じたので、対策を検索した結果を報告します。
【231003追記】
vite-plugin-inspectのバージョン0.7.40がリリースされ、根本的に解決ができたようです!
https://github.com/antfu/vite-plugin-inspect
今回生じたエラー
Nuxt3プロジェクトを新規に立ち上げ、npm run dev
コマンドを叩いたところ次のエラーメッセ―ジが生じました。
import Inspect from 'vite-plugin-inspect';
^^^^^^^
SyntaxError: The requested module 'vite-plugin-inspect' does not provide an export named 'default'
at ModuleJob._instantiate (node:internal/modules/esm/module_job:124:21)
at async ModuleJob.run (node:internal/modules/esm/module_job:190:5)
vite-plugin-inspectはビルドツールであるviteに起因するもので、nuxtプロジェクトを立ち上げると自動的に追加されるパッケージです。
import Inspect from 'vite-plugin-inspect';
とありますが、VSCodeで検索をかけても該当のコードは見つけることが出来ません。
エラーの要因と解決策
タイムリーなエラーだったようで、エラーコードを検索かけるとGitHubのIssueバグ報告がヒットしました。
エラーの要因
2023年10月2日にvite-plugin-inspect
のバージョン0.7.39がリリースされたようです
(まさに今日!!執筆現在)。
バージョン違いにより、export方式が変わってしまったようなので、現在のところ暫定的な対策を取ることが必要そうです。
解決方法としては、現段階では以下の二つどちらかの対応となるようです。
具体的にビルドツールがどう動いているか把握してないのですが、私もどちらの方法でも解決することが出来ました。
nuxt.config.tsの修正
nuxt.config.tsがルートディレクトリに作成されていますが、ここに記載されているdevtools: { enabled: ture }
をfalse
に書き換えることで解決できます。
devtools: { enabled: ture },
package.jsonの修正(npmの場合)
もう一つの解決策として、package.jsonに以下を記載することでも解決できるようです。
"overrides": {
"vite-plugin-inspect": "0.7.38"
}
また、この場合は、npm install
コマンドを忘れずに
おわりに
これまで、何度もnuxtプロジェクトは立ち上げてきましたが、npx nuxi init
した直後のエラーははじめてでした。
運よくGitHubのIssueが立ち上がってくれてて助かりましたが、nuxtプロジェクトの裏で動いているプラグインたちをある程度は理解しておかないと対策が難しそうですね。
このエラー自体は、時間が経てば暫定的ではない解決策が新たなIssueとして作成されそうなので、バグ報告をwatchしていきます。
コメント