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 分钟前
【编程】是什么编程思想,让老板对小伙怒飙英文?Are you OK?
前端·javascript·后端
尘世中一位迷途小书童4 分钟前
版本管理实战:Changeset 工作流完全指南(含中英文对照)
前端·面试·架构
尘世中一位迷途小书童8 分钟前
VitePress 文档站点:打造专业级组件文档(含交互式示例)
前端·架构·前端框架
甜瓜看代码8 分钟前
666
前端
吃饺子不吃馅13 分钟前
【八股汇总,背就完事】这一次再也不怕webpack面试了
前端·面试·webpack
Amos_Web20 分钟前
Rust实战教程--文件管理命令行工具
前端·rust·全栈
li理29 分钟前
鸿蒙相机开发入门篇(官方实践版)
前端
webxin66630 分钟前
页面动画和延迟加载动画的实现
前端·javascript
逛逛GitHub43 分钟前
这个牛逼的股票市场平台,在 GitHub 上开源了。
前端·github
细节控菜鸡1 小时前
【排查实录】Web 页面能打开,服务器能通接口,客户端却访问失败?原因全在这!
运维·服务器·前端