我有问题构建一个应用程序,因为node-sass不断失败的错误。

binding /Users/warren/Sites/random-docs/my-cms/node_modules/node-sass/vendor/darwin-x64-11/binding.node出错 Node Sass无法找到当前环境的绑定:OS X 64位的Node 0.10.x

我试过跑步

npm rebuild node-sass

二进制很好;退出。

当运行node -v时,我得到v6.2.2

这与sass错误说的“Node 0.10.x”不同。我不明白为什么它会得到错误的版本。我也尝试删除node_modules文件夹并运行npm update或npm install,这两者都没有解决问题。什么好主意吗?


当前回答

我在Linux Mint中做了所有这些:

删除node_modules 运行npm install 运行npm rebuild node-sass

但是它并没有修复这个问题,仍然得到关于node-sass的错误。

我尝试再次运行命令重建node-sass与sudo即sudo npm重建node-sass,它终于工作了!

其他回答

Windows 10 This was a fun one for me... In order to resolve it I had to do all of the following.. 1.) Apparently node-sass isn't supported by some of the more recent versions of Node.js so I had to Uninstall Node-v 12.14.1, and delete the nodejs directory in C:/Program Files. 2.) Reinstall a earlier version of Node (for me 10.16.2 worked). NOTE: I had initially downloaded the x86 version so if your System is x64 download the x64 verison... 3.) From here I had to delete my entire project and re-clone it. After this things ran fine.

您可能有一个与当前版本不同的节点版本构建。尝试运行这些命令,应该可以解决问题。

npm cache clean --force &&  
rm -rf node_modules &&  
rm -rf package-lock.json &&  
npm i

在创建AspNetCore应用程序时,我在Visual Studio 2015 Community Edition中遇到了类似的错误:

Node Sass could not find a binding for your current environment: Windows 32-bit with Node.js 5.x
Found bindings for the following environments:
  - Windows 64-bit with Node.js 6.x
This usually happens because your environment has changed since running `npm install`.
Run `npm rebuild node-sass` to build the binding for your current environment.
    at module.exports ([..]\node_modules\node-sass\lib\binding.js:15:13)
    at Object.<anonymous> ([..]\node_modules\node-sass\lib\index.js:14:35)
    at Module._compile (module.js:397:26)
    at Object.Module._extensions..js (module.js:404:10)
    at Module.load (module.js:343:32)
    at Function.Module._load (module.js:300:12)
    at Module.require (module.js:353:17)
    at require (internal/module.js:12:17)
    at Object.<anonymous> ([..]\node_modules\gulp-sass\index.js:187:21)
    at Module._compile (module.js:397:26)

您可以从上面的错误中看到,原因是nodejs绑定的版本不匹配。

Node Sass无法找到当前环境的绑定: Windows 32位,带有Node.js 5.x 为以下环境找到绑定: —Windows 64位,Node.js 6.x

我找到的解决办法是

安装windows版本的nodejs, 在外部网络工具中添加节点js (C:\Program Files\nodejs)的路径(参见Rob Scott的回答) 将nodejs路径移到$(path)上方。

Open Visual Studio 2017 进入工具->选项… 进入项目和解决方案-> Web包管理 移动$(PATH)到列表的顶部并关闭该窗口。 重新启动Visual Studio。 这在我的例子中是可行的,因为我的节点版本是11.x

只需刷新你的npm缓存:

npm cache clean --force  
npm install

在同样的情况下,它总是适用于我。

UPD:您的问题也可能是由于缺少全局sasslib。

npm install -g sass