配置: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(12.7.0),然后我必须显式安装最新版本的node-sass:

NPM安装node-sass@4.12.0

其他回答

当我试图运行一个项目时,我也遇到了类似的问题。 首先我卸载了当前版本

npm uninstall node-sass

然后我重新安装到最新版本

npm install node-sass

对我来说,解决这个问题的方法是安装node-sass的最新版本,在本例中是4.7.2。

Node-sass没有被安装,这可能是许多原因之一

您没有安装

npm install node-sass --save-dev

您有一个权限错误

sudo npm install --save-dev  --unsafe-perm node-sass

你有一个内存问题,因为它试图使它(构建从c代码在你的平台),这适用于某些平台和节点版本

node --max_old_space_size=8000 $(which npm) install node-sass --save-dev

你的节点和npm版本不兼容,这很可能在构建过程中产生了失败,

在这种情况下,使用n或nvm来确保在新环境和原始环境中有相同的版本,即它可以工作的版本,因为这通常是通过在不同的环境中使用不同的版本来实现的

此错误是由于node-sass不存在…要解决这个问题,只需运行以下命令

NPM安装node-sass

Run:

npm rebuild node-sass --force              

它会工作得很好。