npx create-nuxt-appコマンドを利用してNuxtアプリケーションを作成する際、Programming languageをTypeScriptに選択すると初回起動でCannot find module './index.vue?vue&type=script&lang=ts&'というエラーが発生しました。
ERROR Failed to compile with 1 errors friendly-errors 15:55:56
This relative module was not found: friendly-errors 15:55:56
friendly-errors 15:55:56
* ./index.vue?vue&type=script&lang=ts& in ./pages/index.vue friendly-errors 15:55:56
✖ Client
Compiled with some errors in 7.32s
✖ Server
Compiled with some errors in 7.30s
原因はNuxtアプリケーションを作成するcreate-nuxt-appのバージョンが古かったせいでした。
以下の手順でアップグレードすることで問題解決できました。
# 現在のバージョンを確認する
$ create-nuxt-app -v
create-nuxt-app/3.2.0 darwin-x64 node-v14.5.0
# アップグレードを実行
$ yarn global upgrade create-nuxt-app
# アップグレードできていることを確認
$ create-nuxt-app -v
create-nuxt-app/3.3.0 darwin-x64 node-v14.5.0
create-nuxt-appのアップグレード前と後のpackage.jsonを比較してみると、アップグレード前(3.2.0)のときはバージョン1系の@nuxt/typescript-runtimeがインストールされていました。
一方、アップグレード後(3.3.0)では2系の@nuxt/typescript-runtimeがインストールされていました。
根本的な原因は古いバージョンの@nuxt/typescript-runtimeを利用していたからのようでした。
ですので、yarn add @nuxt/typescript-runtimeで@nuxt/typescript-runtimeのバージョンをアップグレードしてあげれば今回の事象は解決できます。
