节点包和节点 sass 中的错误

Posted

技术标签:

【中文标题】节点包和节点 sass 中的错误【英文标题】:Error in node packages and node-sass 【发布时间】:2017-12-01 20:13:23 【问题描述】:

我在 javascript 控制台中收到此错误。 我已经删除了 node_modules 并重新安装了它,并且我已经运行了 npm rebuild node-sass。 我真的不知道该怎么办了。 非常感谢您的帮助。

app.js:20147 Uncaught Error: Module build failed: ModuleBuildError: Module 

build failed: Error: Missing binding /home/vagrant/Quality1/node_modules/node-sass/vendor/linux-x64-57/binding.node
Node Sass could not find a binding for your current environment: Linux 64-bit with Node.js 8.x

Found bindings for the following environments:
  - Windows 32-bit with Node.js 6.x
  - 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 --force` to build the binding for your current environment.
    at module.exports (/home/vagrant/Quality1/node_modules/node-sass/lib/binding.js:15:13)
    at Object.<anonymous> (/home/vagrant/Quality1/node_modules/node-sass/lib/index.js:14:35)
    at Module._compile (module.js:569:30)
    at Object.Module._extensions..js (module.js:580:10)
    at Module.load (module.js:503:32)
    at tryModuleLoad (module.js:466:12)
    at Function.Module._load (module.js:458:3)
    at Module.require (module.js:513:17)
    at require (internal/module.js:11:18)
    at Object.<anonymous> (/home/vagrant/Quality1/node_modules/sass-loader/index.js:4:12)
    at Module._compile (module.js:569:30)
    at Object.Module._extensions..js (module.js:580:10)

npm rebuild node-sass --force(响应)

make: Leaving directory/home/vagrant/Quality1/node_modules/node-sass/build' 吉普信息还可以 安装到 /home/vagrant/Quality1/node_modules/node-sass/vendor/linux-x64-57/binding.node

node-sass@3.13.1 install /home/vagrant/Quality1/node_modules/gulp-sass/node_modules/node-sass 节点脚本/install.js

node-sass 构建二进制文件位于 /home/vagrant/Quality1/node_modules/gulp-sass/node_modules/node-sass/vendor/linux-x64-57/binding.node

node-sass@3.13.1 安装后 /home/vagrant/Quality1/node_modules/gulp-sass/node_modules/node-sass 节点脚本/build.js

二进制文件位于 /home/vagrant/Quality1/node_modules/gulp-sass/node_modules/node-sass/vendor/linux-x64-57/binding.node 测试二进制 二进制没问题 node-sass@4.5.3 /home/vagrant/Quality1/node_modules/node-sass node-sass@3.13.1 /home/vagrant/Quality1/node_modules/gulp-sass/node_modules/node-sass `

【问题讨论】:

你试过运行npm rebuild node-sass --force 是的,我就是这么做的。并没有好的结果。还是一样。 我也运行 npm cache clean。看看是不是缓存有问题,还是一样。 你能把npm rebuild node-sass --force的输出贴出来 好的,它似乎运行正常。 【参考方案1】:

更改“gulp-sass”:“^2.3.2” 到 “gulp-sass”:package.json 中的“3.0.0”

通过删除 node_modules 文件夹来清除它,然后运行

npm 安装

再次,它不会给出错误!

【讨论】:

非常感谢!我想知道我需要升级哪个依赖项才能摆脱那个不受支持的 node-sass 版本。【参考方案2】:

您正在使用node-sass@3.13.1。该版本从未支持 Node 8。

你可以通过两种方式解决这个问题:

    使用node-sass@4.5.3或更高版本(目前最新的是4.7.2)。有时node-sass 是另一个包的依赖,然后尝试更新这个包。 使用 Node 6。在项目之间管理不同版本的 Node 最简单的方法是使用NVM 或NVM Windows。我还建议您使用包含所需节点版本的.nvmrc 文件。然后,您将能够在项目目录中使用 $ nvm use 在 Node 版本之间切换。

【讨论】:

以上是关于节点包和节点 sass 中的错误的主要内容,如果未能解决你的问题,请参考以下文章

NodeJS OSX错误构建node-sass

Angular 2 节点波旁错误

超时错误重新启动 mysql (mariadb) 这是 3 节点 galera 集群中的节点之一

Express中的graphql错误,节点js

分类树模型中的根节点错误

删除二叉搜索树中的节点会引发错误