にgrunt-sass依存するを使用するプロジェクトがたくさんあります。それらのプロジェクトの 1 つを git リポジトリからチェックアウトし、それらを再度コンパイルして自分のコンピューターでチェックアウトするたびに、このプロセスには多くの時間がかかります。node-sasslibsassnpm installlibsass
node-sass既存のlibsassバイナリを提供する方法があるため、毎回コンパイルするプロセスを実行する必要はありません。( https://github.com/sass/node-sass#binary-configuration-parameters )
node-sass次に、 npm パッケージをグローバルにインストールしてみました。libsass をコンパイルし、私の/usr/local/lib/node_modules/node-sassフォルダーにインストールします。
npm install -g node-sass
ファイルにsass_binary_pathパラメータを設定した後:~/.npmrc
sass_binary_path=/usr/local/lib/node_modules/node-sass/vendor/darwin-x64-47/binding.node
プロジェクトをnpm installチェックアウトした後、libsass はコンパイルされなくなり、インストールは成功します。しかし、grunt-sass を使用する grunt タスクを実行すると、次のようになります。
Loading "sass.js" tasks...ERROR
>> Error: ENOENT: no such file or directory, scandir '~/dev/my-project/node_modules/node-sass/vendor'
Warning: Task "sass:dist" not found. Use --force to continue.
Aborted due to warnings.
このキャッシングのプロセスで何が間違っていlibsassますか?
--
編集:
通常の手順でインストールするとnpm install、node_modules/node-sass/vendor/darwin-x64-47/binding.node が作成されます。node_modules/node-sass/vendornode-sass キャッシュ フラグを使用しようとすると、フォルダーも作成されません。