配置: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之后,将立即执行安装后脚本。这个过程需要Python和c++构建器。 日志'gyp:没有Xcode或CLT版本检测到!可能是因为它找不到任何c++构建器。因此,请尝试安装Python和任何c++构建器,然后将它们的目录放在环境变量中,以便npm可以找到它们。(我来自Windows)

其他回答

这对我来说很管用。我首先卸载node-sass。然后重新安装。

NPM卸载node-sass NPM install——save-dev node-sass

我也一直在面对这个错误。以上方法都不适合我。请遵循这个方法,因为它对我有用。

通过npm在Ubuntu 16中安装node-sass:-

你可以用npm 5.2.0版本安装

如果您正在使用nvm:-

nvm install 8.2.1
nvm use 8.2.1
npm install node-sass

如果你单独使用npm,那么升级或降级npm版本到5.2.0

npm install node-sass

我在使用Microsoft Visual Studio Code的集成git终端时遇到了这个错误。由于一些奇怪的原因,VS代码不允许我安装“node-sass”。然后我使用'Git Bash'(已经安装了Git)并运行以下命令: NPM安装node-sass 这对我很管用。我不知道为什么以及它是如何工作的。如果有人有任何解释,请告诉我。

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

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

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

你必须在package.json的dev部分安装node-sass

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