我想使用npm安装sass,但抛出err:找不到模块“ semver”

时间:2019-05-29 18:09:52

标签: npm sass npm-install

我正在尝试使用以下命令安装sass

npm install node-sass --save-dev

但是我收到以下错误:

internal/modules/cjs/loader.js:626
    throw err;
    ^

Error: Cannot find module 'semver'
Require stack:
- /usr/share/npm/lib/utils/unsupported.js
- /usr/share/npm/bin/npm-cli.js
    at Function.Module._resolveFilename (internal/modules/cjs/loader.js:623:15)
    at Function.Module._load (internal/modules/cjs/loader.js:527:27)
    at Module.require (internal/modules/cjs/loader.js:681:19)
    at require (internal/modules/cjs/helpers.js:16:16)
    at Object.<anonymous> (/usr/share/npm/lib/utils/unsupported.js:2:14)
    at Module._compile (internal/modules/cjs/loader.js:774:30)
    at Object.Module._extensions..js (internal/modules/cjs/loader.js:785:10)
    at Module.load (internal/modules/cjs/loader.js:641:32)
    at Function.Module._load (internal/modules/cjs/loader.js:556:12)
    at Module.require (internal/modules/cjs/loader.js:681:19) {
  code: 'MODULE_NOT_FOUND',
  requireStack: [
    '/usr/share/npm/lib/utils/unsupported.js',
    '/usr/share/npm/bin/npm-cli.js'
  ]
}

我尝试卸载/重新安装npm,但这不能解决我的错误。

所以我尝试了以下方法,看是否有帮助:

sudo rm -rf /usr/lib/node_modules/
sudo rm -rf ~/.npm
brew uninstall --force node
brew install node

但是错误仍然存​​在。任何帮助将不胜感激!

2 个答案:

答案 0 :(得分:0)

也许您可以尝试以下步骤,看看它们是否可以解决您的问题:

  1. 删除您的package-lock.json文件(如果存在)。它可能已经过时,导致npm的锁定问题。

    rm package-lock.json

  2. 重试列出的步骤,但不要从node_modules目录中删除/usr/lib/node_modules目录,而是尝试从node_modules目录中删除/usr/local/lib/node_modules目录。

步骤如下,有关详细信息,请参见此answer

sudo rm -rf /usr/local/lib/node_modules
sudo rm -rf ~/.npm
brew uninstall --force node
brew install node
  1. 最后,如果其他所有方法都失败,请尝试从官方documentation安装Node

希望有帮助!

答案 1 :(得分:0)

(在Ubuntu中)

1.- sudo apt install yarn

2.- sudo apt安装curl

3.- <查看https://deb.nodesource.com的最新版本>(现在为12):

4.- curl -sL https://deb.nodesource.com/setup_12.x | sudo -E bash -sudo apt-get install -y nodejs

5.- sudo npm install npm @ latest -g

6.- npm -init或npm -version