我有问题构建一个应用程序,因为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,这两者都没有解决问题。什么好主意吗?
我也有同样的问题
throw new Error(errors.missingBinary());
^
Error: Missing binding /path/to/project/node_modules/node-sass/vendor/linux-x64-47/binding.node
Node Sass could not find a binding for your current environment: Linux 64-bit with Node.js 5.x
Found bindings for the following environments:
- Linux 64-bit with Node 0.10.x
- Linux 64-bit with Node.js 5.x
这是因为我用不同的nodejs版本安装了npm,
尝试删除node_modules文件夹安装和启动
cd your_project
rm -rf node_modules
npm install
npm start or gulp or whatever
如果你正在使用nvm do
nvm use stable // or your favorite version
// remove node_module directory
npm install
npm start or gulp or whatever
对于使用Visual Studio的用户:
目前正在为VS 2015, 2017, 2019, 2022工作(通过下面和/或这篇文章的回复)
任务运行器资源管理器无法加载任务
VS 2015
转到:工具>选项>项目和解决方案>外部Web工具
VS 2017(.3), VS 2019和VS 2022
>选项>项目和解决方案> Web包管理>外部Web工具(每个@nothrow)
在VS 2017, 2019, 2022,你还需要把$(PATH)放在$(VSINSTALLERDIR)\Web\External上面
重新排序,使$(PATH)在$(DevEnvDir)\Extensions\Microsoft\Web Tools\External之上
删除node_modules并运行npm install和npm rebuild node-sass没有任何作用。
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函数中看到这个逻辑