npm install 安装选项 -d -s -g

在使用 npm install 时,-d-g-s 是不同的选项,它们分别代表不同的安装模式或行为。以下是它们的详细解释:

1. -d--save-dev

  • 含义 :将包安装为开发依赖(devDependencies)。

  • 使用场景:如果某个包仅在开发阶段使用,例如测试工具、构建工具或代码检查工具。

  • 效果 :会将安装的包记录在 package.jsondevDependencies 字段中。

  • 例子

    复制代码
    npm install some-package -d
    # 等价于
    npm install some-package --save-dev

2. -g--global

  • 含义:全局安装一个包。

  • 使用场景:通常用于安装命令行工具或全局可用的依赖。

  • 效果 :包会安装在全局环境中(例如 /usr/local/lib/node_modules 或 Windows 的全局目录),而不是当前项目的 node_modules

  • 例子

    复制代码
    npm install some-package -g
    # 等价于
    npm install some-package --global
  • 注意:全局安装的包可以直接通过命令行使用,但项目中的代码通常无法直接引用全局包。


3. -s--save

  • 含义 :将包安装为生产依赖(dependencies)。

  • 使用场景:如果某个包需要在生产环境中使用,例如运行时的库。

  • 效果 :会将安装的包记录在 package.jsondependencies 字段中。

  • 例子

    复制代码
    npm install some-package -s
    # 等价于
    npm install some-package --save
  • 注意 :从 npm 5.x 开始,--save 是默认行为,因此可以省略 -s 选项。

默认安装选项取决于所使用的 npm 版本:

默认行为

  • npm 5.x 开始:

    • 默认安装到 dependencies 中(等同于使用 --save-s)。

    • 也就是说,运行以下命令:

      复制代码
      npm install some-package

      会将 some-package 安装到 node_modules 中,并记录到 package.jsondependencies 字段。

  • npm 5.x 之前

    • 默认安装不会记录到 package.json 中。
    • 如果需要记录到 dependencies,必须显式使用 --save-s

总结

npm 版本 默认行为 是否记录到 package.json
npm 5.x 及以后 安装为 dependencies
npm 5.x 之前 安装但不记录到 package.json

如果你使用的是较新版本的 npm,无需显式使用 -s--save,直接运行 npm install 包名 即可满足生产环境依赖的需求。

参数 长选项 安装类型 存储位置
-d --save-dev 开发依赖 devDependencies
-g --global 全局安装 全局目录
-s --save 生产依赖(默认) dependencies

如果你不确定要用哪种方式安装,可以根据项目需求选择合适的选项。

相关推荐
Struggler2818 分钟前
Chrome插件开发
前端
前端 贾公子21 分钟前
Monorepo + vite 怎么热更新
前端
然我1 小时前
不用 Redux 也能全局状态管理?看我用 useReducer+Context 搞个 Todo 应用
前端·javascript·react.js
前端小巷子1 小时前
Web 实时通信:从短轮询到 WebSocket
前端·javascript·面试
神仙别闹1 小时前
基于C#+SQL Server实现(Web)学生选课管理系统
前端·数据库·c#
web前端神器1 小时前
指定阿里镜像原理
前端
枷锁—sha1 小时前
【DVWA系列】——CSRF——Medium详细教程
android·服务器·前端·web安全·网络安全·csrf
枷锁—sha1 小时前
跨站请求伪造漏洞(CSRF)详解
运维·服务器·前端·web安全·网络安全·csrf
群联云防护小杜2 小时前
深度隐匿源IP:高防+群联AI云防护防绕过实战
运维·服务器·前端·网络·人工智能·网络协议·tcp/ip
汉得数字平台2 小时前
【鲲苍提效】全面洞察用户体验,助力打造高性能前端应用
前端·前端监控