nodejs:npm i与npm i -S、npm i -D区别

npm i(或 npm install)

pnpm中如果pnpm add安装不了,可以试试使用pnpm i

这是最基础的安装命令,用于安装项目的依赖项。

若在项目根目录下运行,且没有指定具体的包名,则会安装package.json文件中列出的所有依赖项(包括dependencies和devDependencies)。

如果指定了包名,如 npm i lodash,则会把这个包安装到当前项目的node_modules目录下,并且如果当前目录存在package.json文件,且没有显式指定-D或-S,默认当作生产环境依赖(除非包已经被明确定义在devDependencies中)。

npm i -S 或 npm install --save

-S 或**--save** 标志告诉npm将安装的包作为一个生产环境依赖(production dependency)。

运行 npm i -S packageName 时,npm不仅会安装包,还会自动将包及其版本号添加到package.json文件的dependencies对象中,这样当其他人克隆项目并运行npm install时,这些生产环境依赖会自动安装。

npm i -D 或 npm install --save-dev

-D 或**--save-dev** 标志告诉npm将安装的包作为一个开发环境依赖(development dependency)。

运行 npm i -D packageName 时,npm同样会安装包,但它会将包及其版本号添加到package.json文件的devDependencies对象中,而不是dependencies。

总结来说,-S****用于标记生产环境必不可少的依赖-D用于标记仅在开发环境中需要的依赖 ,如构建工具、测试框架等。在生产部署时,通常只会安装dependencies中的包,而不安装devDependencies中的包。

相关推荐
打妖妖灵滴哪吒11 分钟前
IOS模态窗口的作用与设计原则
前端·ui
午安~婉19 分钟前
挑战二:博客预览卡片
前端·javascript·html
环境栈笔记35 分钟前
指纹浏览器安全评测方法:核对环境、数据与权限后再选型
前端·人工智能·后端·自动化
打妖妖灵滴哪吒39 分钟前
前端开发/UI设计师-APP中如何进行可发现性设计
前端·ui
Kinghiee43 分钟前
从使用场景切入前端常见设计模式
前端·设计模式
郭老二10 小时前
【前端】vue3:编译步骤
前端
不在逃避q11 小时前
Trae/Vs Code/Cursor命令行无法跑npm命令
前端·arcgis·npm
夏殇之殁11 小时前
包中创建自定义列表项。 . 使用自定义列表项进行数据绑定 . 将天气预报数据保存到本地内存表,通过LiveBindings进行显示。 ...
服务器·前端·javascript
The Chosen One98511 小时前
高进度算法模板速记(待完善)
java·前端·算法
陈随易12 小时前
MoonBit抓包模块pcap,查看电脑的每一次联网通信
前端·后端·程序员