半ば自分へのメモも兼ねて。
Nodejsのv15が出ていた……
二週間遅れぐらいでNodejsの新バージョンを知りました。
半年毎にメジャーバージョンアップとか判断が早い……。
https://nodejs.org/en/blog/release/v15.0.1/
せっかくなのでNuxtJSを動かしてみる
とりあえずnodebrewで新バージョン入れて切り替え。
windowsのwslでやってます。
nodebrew install v15
nodebrew use v15
で、手元のNuxt(v2.12)でサクッと実行。
npm run dev
▼ ▼ ▼
Error: Node Sass does not yet support your current environment: Linux 64-bit with Unsupported runtime (88)
まぁそうなるなー。
作業中に入れたnode-sassが合ってない感じ?
手抜きせずにちゃんとupdateしましょう
nodeモジュールの更新が必要なんでしょ?
npm update
これで最新にして、再度デブ実行。
Error: Node Sass does not yet support your current environment: Linux 64-bit with Unsupported runtime (88)
さっきも見た。
「npm update」だけじゃメジャーバージョンアップには対応しない
そうですよね……そのためのpackage.jsonですよね……。
気を取り直してバージョン確認・更新。
// 気軽にnode-sass更新しようとしたらエラー出た
npm ERR! peerOptional node-sass@"^4.0.0" from sass-loader@8.0.2
npm ERR! node_modules/sass-loader
npm ERR! dev sass-loader@"^8.0.0" from the root project
// ちゃんとsass-loaderも更新します
npm install sass-loader@10.0.5
npm install node-sass@5.0.0
今度は通った!
node-sassとsass-loaderの依存関係って海外Q&Aがあった。
依存の依存とか、そういうケースもあるのですね。
バージョン落とさない方向の解決助かる……。
https://stackoverflow.com/questions/64625050/error-node-sass-version-5-0-0-is-incompatible-with-4-0-0
そして肝心のnuxtのランデヴー。
npm run dev
こちらも問題無し!
中身の理屈は置いといて、使うだけなら問題解決かな。
残る問題
npm run dev動いたから一安心と、実行を停止しようと「Ctrl+c」すると
npm ERR! command failed
npm ERR! signal SIGINT
npm ERR! command sh -c nuxt
えぇ……
いちおうnpm7によるものっぽいけど、対応策っぽい部分読めない……。
https://github.com/npm/cli/issues/2124