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


当前回答

只需要运行注释即可。

NPM重建node-sass

享受你的编码……

其他回答

如果你的终端/命令提示符显示:

Node Sass could not find a binding 
for your current environment: 
OS X 64-bit with Node 0.10.x

并且您已经尝试了以下命令,例如:

npm cache clean --force 
rm -rf node_modules 
npm install 
npm rebuild node-sass

仍然没有工作…

只需在终端中手动运行:node node_modules/node-sass/scripts/install.js

现在运行NPM start或yarn start

Docker相关的答案在这里*

回答如果你看到这个问题,或类似的东西,并正在使用Docker。

原因:当将当前文件结构复制到Docker容器内部时,你可能会将节点模块从一个OS系统复制到另一个OS系统(例如,从Mac到Linux容器)。

解决方案:

添加一个.dockerignore,然后在里面添加:

node_modules

这将导致npm install为docker环境而不是本地机器环境安装绑定。

删除/node-modules文件夹并重新安装,或者在删除后运行gradle任务deploy

/用户/沃伦/网站/ random-docs / my-cms / node_modules node-sass /供应商/ darwin-x64-11 / binding.node

它解决了你的问题。

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

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

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

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