2021.11.30

Nodeのバージョンの上げすぎでnode-sassに怒られました

Nodeのバージョンを上げたらnode-sassで怒られたのでその直し方の記録です<br> 作業内容としては少ないですが、いろんなプロジェクトで怒られて焦ったので書きます

経緯と問題

この記事を書いている2021/11/30時点でのNode.jsの最新バージョンは16.13.1です
ダウンロード | Node.js<br> nodeのバージョンが低すぎたので久しぶりに上げなきゃと思い、8から一気に16に上げました<br> そしたら Node Sass could not find a binding for your current environment のような怒られをされました<br> 調べてみると

$ npm rebuild node-sass

で解決できると出てきたのですが、自分は解決できなかったので、Nodeのバージョンを下げることにしました

解決方法

Nodeのバージョンを下げるついでにバージョン管理ツールも変えようと思い、その作業についても書きます<br> 社用のPCではすでにnodenvを使っていたのですが、個人開発機ではまだnodebrewを使っていたのでnodebrewからnodenvに乗り換えます

nodebrewのアンインストール

$ brew uninstall nodebrew

.zprofile などにPATHが残っていたらそちらも消します

anyenvのインストール

nodenvを入れるためにまずanyenvをインストールします

$ brew install anyenv
$ echo 'eval "$(anyenv init -)"' >> ~/.zshrc
$ anyenv install --init

この辺の作業はM1Macの環境構築についてにも書いたやつです

nodenvのインストール

なんとかenvを入れられる一覧を確認し、nodenvをインストールします

$ anyenv install -l
$ anyenv install nodenv

Nodeのインストール

自分が使っているnode-sassのバージョンに対応しているNodeのバージョンをreleasesを見ながらNodeをインストールしていきます

$ nodenv install xx.yy.z
$ nodenv global xx.yy.z

さいごに

各プロジェクトでどれも開発できなくなってとても焦りましたが解決できてよかったです

参考

Nodeのバージョンを上げたらnode-sassがエラーを吐いたのでコードリーディングしてみた
yarn install時に"Node Sass does not yet support your current environment: OS X 64-bit with Unsupported runtime"というエラーが出る
nodenvの使い方とか