--save、--save-dev的区别及相关知识
-
package.json文件:项目的清单
它可以做很多完全互不相关的事情。 例如,它是用于工具的配置中心。 它也是npm和yarn存储所有已安装软件包的名称和版本的地方。
对于应用程序,package.json文件中的内容没有固定的要求。 唯一的要求是必须遵守JSON格式,否则,尝试以编程的方式访问其属性的程序则无法读取它。
如果要构建要在npm上分发的Node.js软件包,则必须具有一组可帮助其他人使用它的属性。
-
--save 等价于 -S,项目上线以后也需要用到的
-
--save-dev 等价于 -D ,只在开发阶段使用
以上两种方式都会在npm install 执行时把信息写入package.json中,--save会把依赖名称及版本号写入dependencies的属性下,--save-dev会写入devDependencies下
- dependencies:运行时依赖
- devDependencies:开发时依赖
dependencies
下的模块,则是发布后还需要使用的依赖模块,譬如jQuery
库或者Vue
框架等,在开发完后肯定还要依赖它们,否则就运行不了。
devDependencies
下列出的模块,是开发时使用,比如安装js
的压缩包gulp-uglify
时,采用的是npm install --save-dev gulp-uglify
命令安装,因为在发布后用不到它,而只是在开发才用到它。正常使用
npm install
时,会下载dependencies
和devDependencies
中的模块,当使用npm install --production
或者注明NODE_ENV
变量值为production
时,只会下载dependencies
中的模块。
package.json学习指南:package.json 指南 (nodejs.cn)
node.js文档地址:Node.js 中文网 (nodejs.cn)
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· TypeScript + Deepseek 打造卜卦网站:技术与玄学的结合
· 阿里巴巴 QwQ-32B真的超越了 DeepSeek R-1吗?
· 【译】Visual Studio 中新的强大生产力特性
· 【设计模式】告别冗长if-else语句:使用策略模式优化代码结构
· AI与.NET技术实操系列(六):基于图像分类模型对图像进行分类