博客
关于我
npm install的--save和--save-dev使用说明
阅读量:796 次
发布时间:2023-02-17

本文共 2074 字,大约阅读时间需要 6 分钟。

各种安装参数的区别

在使用 npm 进行包管理时,常见的安装命令有多种形式,每种命令的区别主要体现在安装范围、依赖管理以及执行效果等方面。以下是几种常用命令的详细说明:

1. npm install 包名

  • 安装范围:默认安装到项目的 node_modules 目录。
  • 依赖管理:不会下载依赖文件,也不会修改 package.json 文件。
  • 使用场景:适用于本地开发环境的简单依赖管理。
  • 示例命令
    npm install express

2. npm install -g 包名

  • 全局安装:将包安装到系统的全局目录下,不会生成 node_modules 文件夹。
  • 依赖管理:不会下载依赖文件,也不会修改 package.json 文件。
  • 使用场景:适用于在开发环境外需要使用的工具或脚本。
  • 示例命令
    npm install -g lessc

3. npm install --save(-S) 包名

  • 安装范围:默认安装到 node_modules 目录。
  • 依赖下载:会下载相关依赖文件。
  • 依赖管理:在 package.jsondependencies 节点中记录依赖。
  • 生产环境支持:运行 npm install --production 或设置 NODE_ENV=production 时,会将依赖文件下载到 node_modules 目录。
  • 使用场景:适用于项目依赖管理,确保依赖版本一致性。
  • 示例命令
    npm install --save express

4. npm install --save-dev(-D) 包名

  • 安装范围:默认安装到 node_modules 目录。
  • 依赖下载:会下载相关依赖文件。
  • 依赖管理:在 package.jsondevDependencies 节点中记录依赖。
  • 生产环境支持:运行 npm install --production 或设置 NODE_ENV=production 时,不会下载依赖文件到 node_modules 目录。
  • 使用场景:适用于开发工具或脚本的依赖管理,确保工具版本与开发环境一致。
  • 示例命令
    npm install --save-dev lessc

npm install 忘带 --save

有时候在运行 npm install 时,可能会忘记使用 --save--save-dev 参数,导致依赖项未被记录到 package.json 文件中。以下是两种常见的解决方法:

方法一:

npm install `ls node_modules` --save

方法二:

npm install --save $(ls node_modules)

重新生成 package.json

如果需要重新生成或初始化 package.json 文件,可以使用以下命令:

npm init

其他高效运维文章

1. Kubernetes系列:K8s由1.24.1降级为1.23.8

  • 版本更新:了解 Kubernetes 从 1.24.1 到 1.23.8 的降级原因及注意事项。
  • 兼容性:检查相关组件是否支持目标版本。

2. Kubernetes系列:Kubenetes如何访问Harbor私有仓库(401 Unauthorized问题解决)

  • 权限问题:解决访问私有仓库时的 401 Unauthorized 错误。
  • 配置方法:详细说明 Harbor 私有仓库的访问配置。

3. 如何查找OBS的终端节点(Endpoint)和访问域名

  • 终端节点配置:了解 OBS 中终端节点的配置方法。
  • 域名解析:解决访问 OBS 服务时域名解析相关问题。

4. CentOS下配置Nginx、Redis、Elasticsearch、MongoDB、RocketMQ、Logstash、Filebeat、XXLJOB、Kibana开机自启动

  • 服务启动:详细说明各服务开机自启动的配置方法。
  • 系统稳定性:确保服务稳定运行的关键配置。

5. 微信公众号消息模板已去除尾部/备注内容、自定义颜色、表情符号,如何新增模板

  • 模板创建:了解如何新增符合最新规范的模板。
  • 设计优化:提供模板设计优化的建议。

6. 高效运维:MySQL使用mysqlbinlog将binlog转换为可阅读SQL文件的方法

  • binlog处理:详细说明将 binlog 转换为 SQL 文件的方法。
  • 数据恢复:了解该方法在数据恢复中的应用场景。

7. ESXI虚拟机Centos 7添加新硬盘操作步骤

  • 硬盘添加:详细说明在 ESXI 中添加新硬盘的操作步骤。
  • 存储扩展:了解如何通过添加硬盘扩展虚拟机的存储空间。

8. Jenkins集成Gitlab、SonarQube搭建自动化代码质量管理平台(高级篇)

  • 工具集成:详细说明 Jenkins 与 Gitlab、SonarQube 的集成方法。
  • 质量管理:了解如何通过 Jenkins 实现代码质量管理和持续集成。

更多高效运维文章请关注【】专栏,我会不定期进行分享。

转载地址:http://omjfk.baihongyu.com/

你可能感兴趣的文章
Object of type 'ndarray' is not JSON serializable
查看>>
Object Oriented Programming in JavaScript
查看>>
object references an unsaved transient instance - save the transient instance before flushing
查看>>
Object 类的常见方法有哪些?
查看>>
Object-c动态特性
查看>>
Object.assign用法
查看>>
Object.create
查看>>
Object.defineProperty详解
查看>>
Object.keys()的详解和用法
查看>>
objectForKey与valueForKey在NSDictionary中的差异
查看>>
Objective - C 小谈:消息机制的原理与使用
查看>>
OBJECTIVE C (XCODE) 绘图功能简介(转载)
查看>>
Objective-C ---JSON 解析 和 KVC
查看>>
Objective-C 编码规范
查看>>
Objective-Cfor循环实现Factorial阶乘算法 (附完整源码)
查看>>
Objective-C——判断对象等同性
查看>>
objective-c中的内存管理
查看>>
Objective-C之成魔之路【7-类、对象和方法】
查看>>
Objective-C享元模式(Flyweight)
查看>>