javascript - npm 错误!semver.simplifyRange 不是函数
问题描述
尝试遵循Express入门教程。
我生成了一个应用程序并npm install
按照提供的说明运行。
> npx express-generator --view=pug myapp
> npm install
npm ERR! semver.simplifyRange is not a function
npm ERR! A complete log of this run can be found in:
npm ERR! /home/user/.npm/_logs/2021-03-21T04_58_39_577Z-debug.log
日志中的相关部分
555 http fetch GET 200 https://registry.npmjs.org/longest/-/longest-1.0.1.tgz 706ms
556 timing reifyNode:node_modules/longest Completed in 751ms
557 timing metavuln:cache:get:security-advisory:transformers:qlM2fO34VL+rWNeim/6QsbBJFfHtRf4Z7FAoL1JLqVXlvg5FMRxw1WstcKR09WDDJCiJsPPrdRJugEOTZ6eGZA== Completed in 22ms
558 verbose stack TypeError: semver.simplifyRange is not a function
558 verbose stack at Advisory.[calculateRange] (/usr/lib/node_modules/npm/node_modules/@npmcli/metavuln-calculator/lib/advisory.js:191:16)
558 verbose stack at Advisory.load (/usr/lib/node_modules/npm/node_modules/@npmcli/metavuln-calculator/lib/advisory.js:148:28)
558 verbose stack at Calculator.[calculate] (/usr/lib/node_modules/npm/node_modules/@npmcli/metavuln-calculator/lib/index.js:59:14)
558 verbose stack at async Promise.all (index 0)
558 verbose stack at async Map.[init] (/usr/lib/node_modules/npm/node_modules/@npmcli/arborist/lib/audit-report.js:177:7)
558 verbose stack at async Map.run (/usr/lib/node_modules/npm/node_modules/@npmcli/arborist/lib/audit-report.js:105:7)
新节点,我不知道这意味着什么。看起来是 npm 而不是 Express 的问题?
我尝试运行npm cache clean --force
和删除node_modules
,但都没有帮助。
如果相关,npm 版本 7.6.3 和节点版本 15.11.0。
解决方案
我的解决方案是安装旧版本的 semver 并将 npm 本身更新到版本 7.7.0。我使用了以下命令:
sudo npm install -g semver@7.2.0
接着
sudo npm install -g npm@7.7.0
工作后
推荐阅读
- wordpress - Facebook for WooCommerce 插件
- dataset - 有人可以帮我找到满足以下要求的数据集吗?
- flutter - 如何添加如图所示的弯曲模态底片?如何在其上方添加关闭按钮?飘飘然
- r - 使用 case_when() 和 filter() 根据 R 中一列中的值和另一列中的级别对数据帧进行子集化
- mysql - 为什么我的 SQL FOREIGN KEY 子句返回错误?
- javascript - 即使 gtag 是窗口对象的一部分,Javascript 也会抛出“Uncaught TypeError: gtag is not a function”
- unity3d - Unity 中的 GPGS 设置 - 构建错误
- google-drive-api - 检查 google drive 文件是否是 Google Docs、Sheets 和 Slides?
- python - 在 Python 中将混合数据类型转换为数值
- python - 从无 Python 引发 JSONDecodeError("Expecting value", s, err.value)