Nuxt.jsのアップデートでエラーが起こりアップデートできない問題
Vue packages version mismatch:エラー
npm コマンドを使って nuxt.js 一式をマイナーアップデートするためにモジュール一式を再インストールするがエラーがでてしまう。暫定対応で追加しているモジュールのバージョンを下げた
手順と結果の状況
アップデート手順
npmコマンドを使って公式サイト通りにおこなう
手順の参考
参考: https://nuxtjs.org/ja/docs/get-started/upgrading/#npm
sudo rm -rf node_modules/ sudo rm package-lock.json npm install
エラー内容
アップデートをすると下記のようなエラー
Vue packages version mismatch: - vue@3.2.31 - vue-server-renderer@2.6.14 This may cause things to work incorrectly. Make sure to use the same version for both.
vue関連のモジュールインストール状況を見る
npm list vue
...
├─┬ bootstrap-vue@2.21.2
│ └─┬ portal-vue@2.1.7
│ └── vue@2.6.14
├─┬ nuxt@2.15.8
│ ├─┬ @nuxt/vue-app@2.15.8
│ │ ├── vue@2.6.14
│ │ └─┬ vuex@3.6.2
│ │ └── vue@2.6.14 deduped
│ └─┬ @nuxt/vue-renderer@2.15.8
│ └── vue@2.6.14
└─┬ vuex-persistedstate@4.1.0
└─┬ vuex@4.0.2
└─┬ vue@3.2.31
└─┬ @vue/server-renderer@3.2.31
└── vue@3.2.31 deduped
2022/03/02現在だとnuxt.jsはベータ版3が公開されておりnuxt.jsのバージョン2はv2.15.8で止まっている様子
参考: https://nuxtjs.org/ja/releases
vueのバージョンを2によせるしかなさそう。
原因はvuex-persistedstate@4.1.0の依存モジュール
vuex-persistedstateについては現在非推奨になってしまっていた。
参考: https://www.npmjs.com/package/vuex-persistedstate/v/4.1.0
暫定対応
根本的な対策はこのモジュールは使わず別の方法を模索しないといけないが時間がかかりそう。一旦モジュールのバージョンを下げて対応してその後、根本的な対策をしておきたい。
packege.jsonを変更
packege.json
{
"dependencies": {
"vuex-persistedstate": "^3.2.1",
}
}
インストールやり直し
sudo rm -rf node_modules/ sudo rm package-lock.json npm install
エラー回避されたようなので念の為状況確認
npm list vue
...
├─┬ bootstrap-vue@2.21.2
│ └─┬ portal-vue@2.1.7
│ └── vue@2.6.14 deduped
├─┬ nuxt@2.15.8
│ ├─┬ @nuxt/vue-app@2.15.8
│ │ └── vue@2.6.14 deduped
│ └─┬ @nuxt/vue-renderer@2.15.8
│ └── vue@2.6.14 deduped
└─┬ vuex-persistedstate@3.2.1
├── vue@2.6.14
└─┬ vuex@3.6.2
└── vue@2.6.14 deduped
vuex-persistedstateの代替えについてはまた別途紹介したいと思います。
コメント
0 件のコメント :
コメントを投稿