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
相关推荐
Rain5091 分钟前
mini-cc 的 MCP 协议:给 AI 装个 USB-C 接口
c语言·开发语言·前端·人工智能·架构·node.js·ai编程
向量引擎1 小时前
从零起步,如何打造专属向量引擎 API 中转工作流?
java·服务器·前端
IT_陈寒1 小时前
Vue这个动态响应坑把我整不会了
前端·人工智能·后端
bestlanzi2 小时前
使用nvm管理node环境
前端·vue.js·npm
SomeOtherTime2 小时前
Geojson相关(AI回答)
java·前端·python
就叫_这个吧3 小时前
HTML常用标签及举例使用
前端·html
utf8mb4安全女神3 小时前
【rsyslog服务】把所有服务的“临界点”以上的错误都保存在/var/log/alert.log⽇志中
java·前端·javascript
YANQ6623 小时前
7.bundlesdf本地安装
前端·webpack·node.js
星夜夏空993 小时前
FreeRTOS学习(7)——任务列表
java·前端·学习
weixin_471383034 小时前
由浅入深递归练习
前端·javascript·vue.js