npm run serve报错如下


sh: vue-cli-service: command not found
npm ERR! code ELIFECYCLE
npm ERR! syscall spawn
npm ERR! file sh
npm ERR! errno ENOENT
npm ERR! vue-antd-pro@2.1.0 serve: `vue-cli-service serve --hot`
npm ERR! spawn ENOENT
npm ERR! 
npm ERR! Failed at the vue-antd-pro@2.1.0 serve script.
npm ERR! This is probably not a problem with npm. There is likely additional logging output above.

然后执行:npm install 报错如下:


gyp WARN install got an error, rolling back install
gyp ERR! configure error 
gyp ERR! stack Error: Client network socket disconnected before secure TLS connection was established
gyp ERR! stack     at connResetException (internal/errors.js:607:14)
gyp ERR! stack     at TLSSocket.onConnectEnd (_tls_wrap.js:1554:19)
gyp ERR! stack     at TLSSocket.emit (events.js:388:22)
gyp ERR! stack     at endReadableNT (internal/streams/readable.js:1336:12)
gyp ERR! stack     at processTicksAndRejections (internal/process/task_queues.js:82:21)
gyp ERR! System Darwin 20.4.0
gyp ERR! command "/usr/local/bin/node" "/usr/local/lib/node_modules/npm/node_modules/node-gyp/bin/node-gyp.js" "rebuild"
gyp ERR! cwd /Users/sf/Desktop/vuecodes/ts-dist-core-web-insight/node_modules/webpack-dev-server/node_modules/fsevents
gyp ERR! node -v v14.17.0
gyp ERR! node-gyp -v

删除package-lock.json

再重新运行 npm run serve 成功

顺便记录一下

1.node_modules介绍

  • node_modules文件夹中存放许多的模块文件及插件

2.package.json文件的作用

产生背景:在拷贝项目时不需要拷贝node_modules文件夹,如果拷贝的话会很慢,那么如何解决安装的依赖与原项目依赖及版本保持一致呢?

  • package.json 项目描述文件,保存在项目的根目录下面,记录了当前的项目信息,用npm init -y命令生成
  • 拷贝项目后,直接执行npm install会自动安装package.json 文件中记录的依赖

3.项目依赖vs开发依赖

项目依赖

  • 项目依赖:在项目的开发阶段和线上运营阶段,都需要依赖的第三方包
  • 使用npm install 包名 命令将包添加到package.json文件的dependencies字段中
  • 重新安装时使用npm install --production 只安装项目依赖

开发依赖

  • 开发依赖:在项目的开发阶段需要依赖,线上运营阶段不需要的第三方包
  • 使用npm install 包名 --save-dev命令将包添加到package.json文件的devDependencies字段中

4.package-lock.json文件的作用

  • 记录模块与模块之间的依赖关系
  • 锁定包的版本
  • 记录项目所依赖第三方包的树状结构和包的下载地址,加快重新安装的下载速度
Logo

为开发者提供学习成长、分享交流、生态实践、资源工具等服务,帮助开发者快速成长。

更多推荐