node-sass 已经被废弃,dart-sass 是官方推荐的选择,也不会遇到本文的问题 现在 npm 上安装 sass 默认已经是 dart-sass 了 —— 2022-3-29
node-sass#
node-sass は、私たちの開発でよく使用される依存パッケージであり、インストールには時間がかかり、エラーが発生することが最も一般的です。自分のプロジェクトで使用するか、他のプロジェクトの依存関係をインストールする場合でも、次のコマンドを実行します。
npm install
とにかくさまざまな問題が発生します。
解決策#
問題が発生した場合は、まず検索エンジンを使用します。通常、node-sass を検索すると「失敗」や「fail」といったキーワードが関連付けられます。これは、この問題が非常に一般的であることを示しています。そして、さまざまな方法と自分自身の方法を簡単に記録します。
ここにはいくつかの先人の経験があります:#
npm のソースの速度が遅く、ダウンロードに失敗する場合#
通常、cnpm を使用することをお勧めします。
cnpm install
または、ソースの設定を変更することで、いくつかの隠れたバグが発生しないようにすることもできます。
npm config set registry https://registry.npm.taobao.org
または、node-sass のダウンロードソースを淘宝ミラーに変更することもできます。
npm config set sass-binary-site http://npm.taobao.org/mirrors/node-sass
バイナリファイルのソースの速度が遅いかアクセスできない場合#
node-sass は、npm の一部のコードだけでなく、バイナリファイルもダウンロードしますが、デフォルトのソースは github です。周知の通り、github は国内でのアクセスが遅く、特定の時期にはアクセスできないこともあります。そのため、国内のソースに変更することもできます。環境変数に次の行を追加します。
set SASS_BINARY_SITE=https://npm.taobao.org/mirrors/node-sass/ && npm install node-sass
または、プロジェクト内に.npmrc
ファイルを追加し、次の行を追加します。
sass_binary_site=https://npm.taobao.org/mirrors/node-sass/
これにより、npm で node-sass をインストールする際に淘宝ミラーからバイナリファイルがダウンロードされます。
最終的な解決策#
最終的な解決策は、プロキシを使用してトンネルを設定することです。
npm config set proxy http://127.0.0.1:#あなたのプロキシのローカルポート番号#
npm install node-sass
# ダウンロードが完了したら、http プロキシを削除します
npm config delete proxy
特別な手段で解決する#
ダウンロードに失敗した場合は、事前にローカルにダウンロードすることもできます。まず、システムのバージョンを確認して、どのバージョンのバイナリファイルが適しているかを確認します。
次のコマンドを使用してバージョンを確認します。
node -p "[process.platform, process.arch, process.versions.modules].join('-')"
すると、win32-x64-83
のような形式のシステムバージョンが表示されます。次に、次の 2 つのアドレスから、.node 拡張子の node-sass ファイルをダウンロードします。
次に、node-sass のバイナリファイルのダウンロードソースをダウンロードしたファイルに手動で指定します。
npm config set sass-binary-path あなたがダウンロードしたバイナリファイルを保存したディレクトリ
// 例: npm config set sass-binary-path e:/web/win32-x64-48_binding.node
その後、npm i
を実行すれば完了ですが、この方法では node-sass のバージョンを更新することはできないため、前述の方法で解決できない場合に試してみてください。