更新NodeJS后使用node-sass的问题

时间:2016-07-29 06:59:29

标签: node.js node-sass

我在更新NodeJS版本后使用node-sass遇到问题。

问题:

(node:472) fs: re-evaluating native module sources is not supported. If you are using the graceful-fs module, please update it to a more recent version.
C:\aglqng\src\main\webapp\node_modules\node-sass\lib\index.js:15
    throw new Error(errors.missingBinary());
    ^

Error: Missing binding C:\aglqng\src\main\webapp\node_modules\node-sass\vendor\win32-x64-48\binding.node
Node Sass could not find a binding for your current environment: Windows 64-bit with Node.js 6.x

Found bindings for the following environments:
  - Windows 64-bit with Node 0.12.x

This usually happens because your environment has changed since running `npm install`.
Run `npm rebuild node-sass` to build the binding for your current environment.
    at Object.<anonymous> (C:\aglqng\src\main\webapp\node_modules\node-sass\lib\index.js:15:11)
    at Module._compile (module.js:541:32)
    at Object.Module._extensions..js (module.js:550:10)
    at Module.load (module.js:458:32)
    at tryModuleLoad (module.js:417:12)
    at Function.Module._load (module.js:409:3)
    at Module.require (module.js:468:17)
    at require (internal/module.js:20:19)
    at Object.<anonymous> (C:\aglqng\src\main\webapp\node_modules\gulp-sass\index.js:187:21)
    at Module._compile (module.js:541:32)

版本:

node-sass 3.8.0 (Wrapper) [JavaScript]
libsass 3.3.6 (Sass Compiler) [C/C++]
nodejs v6.3.1

平台: Windows 10 x64

我试过这个并且它不起作用:

1)

node rebuild node-sass

2)

npm uninstall node-sass
npm i node-sass

12 个答案:

答案 0 :(得分:15)

如果rebuild命令对您不起作用,请尝试删除“node_modules”目录并重新安装。

答案 1 :(得分:14)

我只需运行此命令即可解决此问题:

npm install node-sass

答案 2 :(得分:7)

您可以运行:

npm rebuild node-sass

答案 3 :(得分:5)

我在更新到VS 2017时遇到了这个问题.VS带有自己的Node安装,可能不是系统中最新的。要覆盖此操作,请执行以下步骤:

  1. 转到工具 - &gt;选项 - &gt;项目和解决方案 - &gt;网络包 管理
  2. &#34;外部工具的位置&#34;添加一个指向的新条目 nodejs安装位置,如:&#34; C:\ Program Files \ nodejs&#34;
  3. 确保它高于其他条目。
  4. 我找到了一篇非常有用的文章here,它告诉我以上几点。

    [注意:如果需要,请先在系统上更新nodejs。在Windows上,这是通过全新安装新版本来完成的。]

答案 4 :(得分:3)

删除node_modules,然后在项目根目录下运行npm install

答案 5 :(得分:2)

这对我有用: 使用Visual Studio 2015同步Node.JS安装版本

1)找到您已经拥有的Node.js安装并在命令行中使用。默认情况下,Node.js 0.12.7作为FYI安装到“C:\ Program Files \ nodejs”。

2)一旦你将所有内容复制到剪贴板,就可以使用工具&gt; Visual Studio 2015中的选项。 在此对话框中,转到项目和解决方案&gt;外部Web工具打开管理VS中使用的所有第三方工具的对话框。这是指向Node.js的地方。

3)在顶部添加一个条目到node.js目录的路径,以强制Visual Studio使用该版本。

谢谢: https://ryanhayes.net/synchronize-node-js-install-version-with-visual-studio-2015/

答案 6 :(得分:1)

最初在macOS Mojave中编译代码存储库并在Windows 10上运行它时出现此错误。

只需使用以下命令即可解决此错误:

npm rebuild node-sass

运行命令后,然后再次运行ng serve

答案 7 :(得分:1)

某些版本的node-sass与某些版本的Node不兼容。在将Node升级到版本12之后,我必须使用以下命令将项目中的node-sass版本升级到4.12:

npm install node-sass@4.12.0

此页面显示版本兼容性:

https://www.npmjs.com/package/node-sass

答案 8 :(得分:1)

在下面运行有助于避免删除node-Modules

cd <Your project path>
node node_modules/node-sass/scripts/install.js

答案 9 :(得分:0)

我和你一样有把握。当我使用npm rebuild node-sass时,它仍然失败,错误为gyp ERR! stack Error: Can't find Python executable "python", you can set the PYT HON env variable.

我搜索了错误消息,某些npm插件需要安装node-gyp。但是,node-gyp有它自己的依赖性。node-gyp

  

在Windows上
  通过提升的PowerShell或CMD.exe(以管理员身份运行)中的npm install --global --production windows-build-tools,使用Microsoft的Windows-build-tools安装所有必需的工具和配置。

npm install --global --production windows-build-tools

然后安装软件包

npm install --global node-gyp

就这样,再次运行npm rebuild node-sass,它就可以了!

答案 10 :(得分:0)

我在Windows上遇到了同样的问题, 我已经通过执行以下操作解决了这个问题:

1)以管理员身份打开终端

2)运行npm rebuild node-sass

3)运行npm ci

答案 11 :(得分:0)

如果运行library(haven) mtcars$cyl2 <- labelled(mtcars$cyl, labels = c("6" = 6)) str(mtcars) #> 'data.frame': 32 obs. of 12 variables: #> $ mpg : num 21 21 22.8 21.4 18.7 18.1 14.3 24.4 22.8 19.2 ... #> $ cyl : num 6 6 4 6 8 6 8 4 4 6 ... #> $ disp: num 160 160 108 258 360 ... #> $ hp : num 110 110 93 110 175 105 245 62 95 123 ... #> $ drat: num 3.9 3.9 3.85 3.08 3.15 2.76 3.21 3.69 3.92 3.92 ... #> $ wt : num 2.62 2.88 2.32 3.21 3.44 ... #> $ qsec: num 16.5 17 18.6 19.4 17 ... #> $ vs : num 0 0 1 1 0 1 0 1 1 1 ... #> $ am : num 1 1 1 0 0 0 0 0 0 0 ... #> $ gear: num 4 4 4 3 3 3 3 4 4 4 ... #> $ carb: num 4 4 1 1 2 1 4 2 2 4 ... #> $ cyl2: 'haven_labelled' num 6 6 4 6 8 6 8 4 4 6 ... #> ..- attr(*, "labels")= Named num 6 #> .. ..- attr(*, "names")= chr "6" 后问题仍然存在,请按照以下说明进行操作

  1. 删除node_modules文件夹
  2. 运行“ npm install”,
  3. npm重建节点资源,
  4. 针对相应环境运行命令。