npm install 中 --save 和 --save-dev 是什么?

npm,全名 Node Package Manager,套件管理工具,package.json 会记下你在项目中安装的所有套件。

假设在项目中安装 lodash

bash 复制代码
npm i --save lodash

这样在 dependencies 中会出现:

如果修改了导入方式:

bash 复制代码
npm i --save-dev lodash

就会看到 lodash 跑到了 devDependencies 中:

官方解释:

"dependencies": Packages required by your application in production.

"devDependencies": Packages that are only needed for local development and testing.

可以想像 dependencies 的组件是你的程式 build 出来之后发布版本仍然需要的组件,举例来说,我需要 sass 套件将我的 sass 转成 css,但是发布版本已经是 css 了,就不需要再有 sass 套件了。又或者我会用 babel 来把我的 ES6 语法转为 ES5 ,这样的转换功能一样只需要在我的开发环境之下,所以可以安装在 devDependencies 就好。

在 Node v5.0.0 之后 --save 已经成为了预设指令,即 npm i --save lodash可以写为npm i lodash即可。--save-dev可以简写为-D

bash 复制代码
npm i --save-dev lodash
# 等同于
npm i -D lodash

Node 查看版本:

bash 复制代码
node -v
npm -v
相关推荐
拉不动的猪3 小时前
前端三大权限场景全解析:设计、实现、存储与企业级实践
前端·javascript·面试
wordbaby3 小时前
Flutter Form Builder 完全指南:告别 Controller 地狱
前端·flutter
A***07174 小时前
React数据可视化应用
前端·react.js·信息可视化
泉城老铁4 小时前
Vue2实现语音报警
前端·vue.js·架构
临江仙4555 小时前
前端骚操作:用户还在摸鱼,新版本已悄悄上线!一招实现无感知版本更新通知
前端·vue.js
想个什么名好呢5 小时前
解决uniapp的H5项目uni-popup页面滚动穿透bug
前端
用户93816912553605 小时前
Vue3项目--mock数据
前端
前端加油站5 小时前
一种新HTML 页面转换成 PDF 技术方案
前端·javascript·vue.js
w***Q3505 小时前
Vue打包
前端·javascript·vue.js
有事没事实验室5 小时前
router-link的custom模式
前端·javascript·vue.js