その解決方法を説明するよー!
laradock環境で、webpack(laravel mix)のタスクランナーを走らせようとしたらエラーが発生。
エラーメッセージを読むとこんなことが書いてあります。
Error: Missing binding /var/www/myapp/node_modules/node-sass/vendor/linux-x64-67/binding.node
Node Sass could not find a binding for your current environment: Linux 64-bit with Node.js 11.x
今回はこの解決策について説明しますね!
※これはlaravelだけでなくgulpを走らせたりしても起きる可能性があるエラーですよね。
基本、このエラーはエラーメッセージと一緒に表示されるnpm rebuildを実行すると直ります。
それでは問題となったエラーから解決策まで細かく見ていきましょう!
npm run dev|rpm run watchでNode Sass could not find a binding for your current environmentなエラーの解決策
エラーメッセージをもう少し下まで読んでいくとこんなことも書いてあります。
This usually happens because your environment has changed since running `npm install`.
Run `npm rebuild node-sass` to download the binding for your current environment.
ざっくり日本語訳すると
「enviromentが以前と変わってしまったから起きてるエラーだよ。`npm rebuild node-sass`を実行して今の環境に適合するものをダウンロードしよう。」
だそうです。とりあえずこういうときは素直に実行するに限ります。
ちなみに、npm rebuild node-sass
の実行コマンドは、人によって内容が微妙に変わると思います。
でもRun ~~を実行して、というメッセージの大枠は同じはず。それを素直に実行してみましょう!
するとなんかダウンロードしたっぽい画面になり
Binary found at /var/www/myapp/node_modules/node-sass/vendor/linux-x64-67/binding.node
Testing binary
Binary is fine
node-sass@4.12.0 /var/www/myapp/node_modules/node-sass
というメッセージが!
続いて npm run watchしたらsuccessでした
短いですが、今回はおしまいです。
ツイッターフォローを!
あと、エンジニアの年収を上げる方法やフリーの営業法をツイートしてるんでフォローしてくださいっ!!
今はRubyの仕事をしてます。
働いてるのは週に2日だけですが、それでも年収は400万近くまでいきます。 プログラミングは安定して、そこそこの金額を稼げるいい仕事です 実務経験が5年くらいあれば誰でもできるので駆け出しエンジニアさんも夢があるんじゃないかと。 — ぱんだ@週2日エンジニア/フリーランス (@panda_program_) March 17, 2019
フォローは↓からですよ!
Follow @panda_program_