$ npm run watch しようとしたら Sorry, there’s a problem with nodist. Couldn’t resolve node version ~~~
$ npm run watch
しようとしたら
Sorry, there’s a problem with nodist. Couldn’t resolve node version spec %s: %s 4.5.0 Couldn’t find any matching version
と怒られた。
なんでだろうと調べたりいろいろ試したりしましたが小1時間ほどハマり心優しい同僚に助けてもらったので覚書しておきます。
池田さんありがと。
対処法
1. nodeのバージョンを確認する
$node -v
v0.0.0
2. .node-version(.node-version)を開いて記載されているバージョンを確認
私の場合「v11.13.0」と記載されていました。
このバージョンとnode-v したときのバージョンを合わせてやります。
3. 今適用されているnode.jsのバージョンを確認
$ nodist
(x64)
> 4.5.0 (C:\xampp\htdocs\hogehoge.jp\hugahuga\.node-version: v4.5.0)
10.15.1 (global: 10.15.1)
11.0.0
11.13.0
つまり現在のnode.jsのバージョンが4.5.0になってしまっている。(私の場合11.13.0も一応存在はしました)
4. v11.13.0がなければインストール
$ nodist + v11.13.0
5. v11.13.0がインストール済になったので切り替える
$ nodist v11.13.0
v11.13.0
v11.13.0 (global)
6. node.jsのバージョンが切り替わったか確認
$ node -v
v11.13.0
これで切り替え完了!
7. 頼む、動いてくれ!
$ npm run watch
8. それでも動かなかったとき
魔法の呪文
(使用中の node にあったバージョンの npm をインストールしてくれます)
$ nodist npm match
9. それでもまだ動かなかったとき
おまじない
(npm config スクリプトの設定でパスを先頭に追加)
$ npm config set scripts-prepend-node-path true
からの
$ npm config list
で
; userconfig C:\Users\whatthehell\.npmrc
scripts-prepend-node-path = true
が追加されていることを確認します。
そして
$npm run watch
まとめ
ここまでの手順でわたしは動きました。
●参考
▼nodist 環境下で npm script 使用時にエラー – blog
▼npm がどうしてもエラーになってしまったら – Qiita