我有问题构建一个应用程序,因为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——force

或者,如果你在容器中使用node-sass:

Docker exec <container-id> NPM rebuild node-sass——force

当node-sass没有当前操作系统的正确绑定时,会发生此错误。

如果你使用Docker,当你将node_modules直接添加到Dockerfile中的容器文件系统(或使用Docker卷挂载它们)时,通常会发生这种错误。

容器体系结构可能与当前的操作系统不同。例如,我在macOS上安装node-sass,但我的容器运行Ubuntu。

如果强制node-sass从容器内部重新构建,node-sass将下载容器操作系统的正确绑定。

查看我的复制案例了解更多。

其他回答

在我的例子中,我在package-lock中发现了node-sass版本。Json与package.json中的node-sass版本不同。这一步解决了我的问题。

删除文件夹node-modules 删除package-lock.json 安装python 2.7 将C:/Python27;C:/Python27/Scripts添加到环境变量->路径 在Powershell中,以管理员身份执行-> npm install -g node-gyp 在我的工作文件夹-> NPM安装

希望这也适用于你

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

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

它解决了你的问题。

这招对我很管用: 纱线添加—force node-sass@4.14.1或纱线添加—force node-sass

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

我能解决的问题 NPM install -global -production windows-build-tools

NPM install——msvs_version=2015

" devDependencies ": { :“babel-core ^ 6.26.0”, :“babel-loader ^ 7.1.4”, :“babel-plugin-transform-decorators-legacy ^ 1.3.5”, :“babel-preset-env ^ 1.6.1”, :“babel-preset-react ^ 6.24.1”, :“babel-preset-stage-2 ^ 6.24.1”, :“css-loader ^ 0.28.11”, :“mini-css-extract-plugin ^ 0.4.0”, :“node-sass ^ 4.11.0”, :“sass-loader ^ 6.0.7”, 4.4.1“webpack”:“^”, :“webpack-cli 3.1.0”, :“webpack-dev-server ^ 3.1.1” }