配置:macOS High Sierra,版本10.13.2,节点:v8.1.2 npm:5.0.3 当我在angularjs项目中运行npm start时,我得到这个错误:

ERROR in Cannot find module 'node-sass'

然后我运行:

npm i node-sass

现在我得到这个错误:

gyp: No Xcode or CLT version detected!
gyp ERR! configure error 
gyp ERR! stack Error: `gyp` failed with exit code: 1

为什么npm不安装node-sass?如何安装node-sass?


当前回答

我的问题是,当我执行命令时,一个网络过滤器不允许我下载node-sass包

npm i

安装Windows构建工具后

npm i -g windows-build-tools

它自己构建node-sass,现在我可以使用它了。

PS:我之前也安装了Python 2.7.17,但我不认为那有帮助。

其他回答

我在Angular中安装依赖时也犯了同样的错误。我尝试了前面提到的技术,但在删除包锁之前,它们都不起作用。json,它是之前运行Node v11时创建的。

现在我使用的是Node v12,这就是我如何得到解决的。

我重复一遍,如果你有包锁。Json删除它,文件,然后安装依赖。

在节点版本v 14中使用此版本

:“node-sass ^ 5.0.0”

我通过安装v10.16.10节点版本解决了这个问题。

NPM install node-sass将在大多数情况下完成这项工作,因为它将添加缺失的sass NPM依赖模块不存在,或者它将覆盖以前崩溃的版本。

对于Mac用户,在上述命令前使用sudo。

在Windows机器上,npm rebuild node-sass——force可能对某些用户不起作用,因为它本质上是在说,“请强制npm为我重建sass节点模块”。它将无法工作,因为该模块不存在。

无论何时你在初始安装时进行npm install, sass模块都没有安装,这就是为什么会出现这个问题。

做npm uninstall node-sass,然后npm i node-sass不适合我。

我的解决方案是npm install——save-dev node-sass。

编码快乐. .