npm i -D和-s及-g以及--save的那些事
i 是 install 的简写
-S 就是 --save 的简写
-D 就是 --save-dev 的简写
npm i module_name -S = > npm install module_name --save 写入到 dependencies 对象 npm i module_name -D => npm install module_name --save-dev 写入到 devDependencies 对象 npm i module_name -g 全局安装
i 是install 的简写
以前一直在纠结一个npm安装的包依赖管理的问题。是这样的: 我们在使用npm install安装模块或插件的时候,有两种命令把他们写入到 package.json 文件里面去,他们是: --save-dev 或 --save 首先需要说明的是Dependencies一词的中文意思是依赖和附属的意思,而dev则是 develop(开发)的简写。 所以它们的区别在 package.json 文件里面体现出来的就是,使用 --save-dev 安装的 插件,被写入到 devDependencies 域里面去,而使用 --save 安装的插件,则是被写入到 dependencies 区块里面去。 那 package.json 文件里面的 devDependencies 和 dependencies 对象有什么区别呢? devDependencies 里面的插件只用于开发环境,不用于生产环境,而 dependencies 是需要发布到生产环境的。 比如我们写一个项目要依赖于jQuery,没有这个包的依赖运行就会报错,这时候就把这个依赖写入dependencies ; 而我们使用的一些构建工具比如glup、webpack这些只是在开发中使用的包,上线以后就和他们没关系了,所以将它写入devDependencies。
npm i xxxx -D 就是 npm i xxxx --save-dev 是把依赖写入进devDependencies对象里面
devDependencies 是开发环境下的依赖,这里是开发环境下的依赖,上线后非必需,比如:webpack,gulp等压缩打包工具
npm i xxxx-S 就是 npm i xxxx--save 是把依赖写入进dependencies对象里面 是生产环境下的,是刚需的 如UI框架 文件字体
dependencies 是生产环境下的依赖,项目刚需的依赖在这里,比如UI框架,字体文件等线上必需的东西
总结:-S 是刚须的,是生产环境下的,入UI字体库
-D是开发环境下的,项目上线后,不一定需要,如webpack, Gulp等。
npm i -D和-s及-g以及--save的那些事的更多相关文章
- npm i安装命令中的-g -D -S的区别
-g为全局安装 -D 对模块进行局部安装,模块写入到 devDependencies 对象 用于开发阶段,开发时用到的工具等 -S 局部安装,不同的是模块写入到 dependencies对象 用于生产 ...
- G++编译链接的那些事
语言 CPP 前言 虽然 VSCodeC++ 编辑器非常受大家的欢迎,无论是大佬还是小白都说对其爱不释手... 我...用了一段时间后发现实在是麻烦,配置往往花费我大量时间.可以说真的是吃力不 ...
- npm install express -g出错
npm ERR! Windows_NT npm ERR! argv "C:\\Program Files\\nodejs\\node.exe" "C:\\Program ...
- windows 中配置 nodejs npm
npm安装模块的方式有两种:本地安装,全局安装. 这两者的区别在于,在用npm install xxx时加不加-g这个选项. 本地安装的路径在win中是当前cmd的路径.比如,我一打开cmd时,路径是 ...
- 更换包管理工具npm为yarn
官网:https://yarnpkg.com/zh-Hans/ 主要考虑: 1. npm管理安装模块依赖的版本不太方便,容易在删除node_modules重新install或在其他机器上新安装时, 安 ...
- npm手册
npm现在都是随同NodeJS一起安装的包管理和分发工具,所以npm的安装,只要下载新版的nodejs已经集成了npm. 安装好了以后,直接输入npm或者npm help,会出来一些npm自带的命令. ...
- NPM 报错--fs: re-evaluating native module sources is not supported. If you are using the graceful-fs module
fs: re-evaluating native module sources is not supported. If you are using the graceful-fs module 解决 ...
- ionic3 npm install cordova error syscall rename
突然出现cordova 不是内部或外部命令,也不是可运行的程序或批处理文件. 可是之前cordova安装后一直用的好好的啊,后来尝试重新安装cordova 出现这个错误.也尝试重新安装了最新版本的no ...
- Mac NPM 配置
1.NPM 简介 NPM(node package manager),通常称为 node 包管理器,是目前世界上最大的开源库生态系统.使用 NPM 可以对 node 包进行安装.卸载.更新.查看.搜索 ...
- npm cnpm
npm 1.说明: npm(node package manager)是nodejs的包管理器,用于node插件管理(包括安装.卸载.管理依赖等) 2.使用npm安装插件:命令提示符执行npm ins ...
随机推荐
- vue-cli3title标签中的htmlWebpackPlugin.options.title
https://blog.csdn.net/weixin_56650035/article/details/119355625
- C#使用迭代器显示公交车站点
public static IList<object> items = new List<object>();//定义一个泛型对象,用于存储对象 /// <summary ...
- Python 学习笔记: 从变量到装饰器
从变量开始 python 中全局变量在函数作用域内只能读,不能"写".如果要在函数作用域内实现修改全局变量值操作,需要使用关键字 global 显示指明该变量是全局变量. 但是,在 ...
- 【SHELL】反斜杠解决多个shell实例扩展
本意是想获取代码仓相对路径,代码如下 base_dir=`pwd` repo forall -c '{ user_dir=$(realpath --relative-to="$bas ...
- sql server 数据恢复
1) 备份当前数据库的事务日志:BACKUP LOG [数据库名] TO disk= N'备份文件名' WITH NORECOVERY 2) 恢复一个误删除之前的完全备份:RESTORE DATABA ...
- Redis异常问题分析黄金一分钟
Redis异常问题分析黄金一分钟 背景 同事发现一个环境redis比较卡顿,导致业务比较难以开展. 问题是下午出现的. 六点左右找到我这边. 想着帮忙看看, 问题其实没有定位完全, 仅是发现了一个可能 ...
- [转帖]07、kvm虚拟机的克隆
操作前先关闭虚拟机 虚拟机的克隆 一.命令行克隆virt-clone(方法一) virt-clone -o vm1 -n vm2 -f /kvmdata/vm2.img 参数说明: -o:指定需要被c ...
- [转帖]ramdisk三种实现方式
https://www.jianshu.com/p/c14cee74fa0a Ramdisk/ramfs/tmpfs Ramdisk:大小固定,默认4096k.在编译内核的时候需将block devi ...
- [转帖]TiUP Cluster 命令合集
https://docs.pingcap.com/zh/tidb/stable/tiup-component-cluster TiUP Cluster 是 TiUP 提供的使用 Golang 编写的集 ...
- [转帖]SQL Server数据库存储总结
SQL Server数据库存储文件类型:数据文件和日志文件.数据文件以页面作为存储单元存储数据. 页面:即数据页面,数据页(Page).是系统在磁盘间中分配的一段大小为8k的连续空间. 文件头(Fil ...