原来好好的,突然提示找不到模块validate-engines.js,CMD命令行输入npm -v不是内部或外部命令,node -v可以查看到版本号。
解决:
1. 卸载nodejs,重新下载安装文件:下载nodejs
2. 到目录:C:\Users\XXX\AppData\Roaming,删除npm文件夹和npm cache文件夹
3. 重新安装nodejs
现在输入版本号就不会出错了:
打开VS CODE,在控制台输入npm install重新安装一下即可,安装的时间会有点久,需要耐心等待安装完成。
运行项目:npm run serve时出现:Error: error:0308010C:digital envelope routines::unsupported错误,打开package.json文件,加上下面代码:
"scripts": {"serve": "SET NODE_OPTIONS=--openssl-legacy-provider && vue-cli-service serve","build": "SET NODE_OPTIONS=--openssl-legacy-provider && vue-cli-service build --mode production","lint": "vue-cli-service lint","buildtar": "npm run build & cd dist & jar -cvf edu-prod.war ./*"}
主要是因为 nodejs v17 版本发布了 OpenSSL3.0 对算法和秘钥大小增加了更为严格的限制,nodejs v17 之前版本没影响,但 v17 和之后版本会出现这个错误。