npm install 常用参数说明

本文详细介绍了npm install命令的用法,包括安装包、依赖锁定、别名以及版本范围的选择。强调了在遇到包不兼容问题时,如何通过指定版本或使用别名来解决。同时提到了npm init多工作区的支持,并提供了工作区管理的示例。此外,还分享了处理不同包之间兼容性的小技巧,如安装指定版本范围的包。
摘要由CSDN通过智能技术生成

描述

npm install 是用来安装包和相关的依赖包的,如果存在package-lock文件,或是 shrinkwrap文件,yarn.lock文件,依赖包的安装将被其锁定,如果存在多个,则优先级如下:

  • npm-shrinkwrap.json
  • package-lock.json
  • yarn.lock

命令

npm install [<@scope>/]<pkg>
npm install [<@scope>/]<pkg>@<tag>
npm install [<@scope>/]<pkg>@<version>
npm install [<@scope>/]<pkg>@<version range>
npm install <alias>@npm:<name>
npm install <folder>
npm install <tarball file>
npm install <tarball url>
npm install <git:// url>
npm install <github username>/<github project>
aliases: add, i, in, ins, inst, insta, instal, isnt, isnta, isntal, isntall

可以看到 npm Install 也可以使用 npm add 命令别名。 

命令示例 

# 默认安装最新
npm install hrefjs-lite

# 根据tag名称安装
npm i hrefjs-lite@tagname

# 指定版本安装
npm i hrefjs-lite@1.0.8
# 安装最新版本
npm i hrefjs-lite@latest

# 根据版本范围安装对应的版本
npm i hrefjs-lite@"<1.0.8"

# 安装指定版本指定别名
npm i hrefjs-lite2@npm:hrefjs-lite@1.0.7

# 文件夹安装
npm i ./hrefjs-lite

# 指定tar压缩文件进行安装
npm i hrefjs-lite.tar

小技巧

我们知道,不同的包之间有可能存在不兼容的问题,也就是说最新版本的包对于其他包项目来说是不兼容的,这个时候可以根据提示,安装对应版本范围内的开发包。

npm install hrefjs-lite@"<1.0.8"

重点说一下使用别名安装npm对应的包,当在开发中,最新的包与旧版本的包可能存在不兼容,可以安装最新版本的包别名,来使用最新的包,还可以兼容旧版本。

npm install hrefjs-lite-other@npm:hrefjs-lite@1.0.7
npm install my-react@npm:react
npm install jquery2@npm:jquery@2
npm install jquery3@npm:jquery@3
npm install npa@npm:npm-package-arg

常用参数

  • -P, --save-prod           dependencies 依赖项安装,不指定-D或-O时,默认使用此项
  • -D, --save-dev            devDependencies 开发依赖项安装
  • -O, --save-optional     optionalDependencies 可选依赖项安装
  • -g, --global                 全局安装
  • -B, --save-bundle       bundleDependencies 依赖项安装
  • -E, --save-exact         明确版本号安装,不使用^符号进行默认安装。
  • -w, --workspace          install 命令也是支持多工作区安装的
  • -ws, --workspaces      设置为false时,禁用workspaces

关于workspaces

在开发中或多或少会对lerna有所了解,lerna是一个用来管理多个软件开发包的工具,那么npm如果需要管理多个软件包,可以在package.json文件中配置 workspaces ,这样就可以对多个软件包进行管理,npm的很多命令都是支持 workspace 的,比如 npm install 命令。

可以使用 npm init -w packages/a  来初始化 workspaces 多包管理。

{
  "name": "my-workspaces-powered-project",
  "workspaces": [
    "packages/a"
  ]
}

不管是安装、升级,或是删除命令,都可以针对具体或所有的软件包进行操作。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值