我有问题构建一个应用程序,因为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,这两者都没有解决问题。什么好主意吗?


当前回答

我,只是为了添加我在Windows上,我通过删除我用户的node_module文件夹中的node-sass条目来解决我的问题(C:/users/$username/node_modules/node_sass)

重建和删除node_sass之前什么都没有做,现在我的问题解决了!

其他回答

请在根文件夹上写下以下命令。

NPM重建node-sass

100%的作品……

只需要运行注释即可。

NPM重建node-sass

享受你的编码……

我也遇到过类似的问题,原因是我的机器上安装了两个版本的Node:一个是“全局”版本,另一个是项目级别的版本。 只有在Gulp构建在Node.js 4下运行时,Sass才能正确构建。x版本,因此请确保升级了您正在使用的Node版本。

PS:如果你完全删除项目中的node_modules文件夹并从头开始重新构建,npm将下载当前系统和节点版本的正确依赖项。

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

node-sass runs an install script to download the required binary. If there are no environment variables, .npmrc variables or process arguments set then the binary is determined by using the current process platform, architecture and Node ABI version. Therefore, if you run node install in one application and then try to run node-sass in an application with a different platform/architecture/ABI, the binary won't have been downloaded. The solution is to manually download the binary or to fix the binary version using an environment variable (SASS_BINARY_NAME) or a .npmrc variable (sass_binary_name)

你可以在node-sass\lib\extensions.js中的getBinaryPath函数中看到这个逻辑