众所周知的node包管理器知识

1,498 阅读4分钟

node包管理器

npm是Node.js的软件包管理器 。它创建于2009年,是一个 开源项目, 旨在帮助JavaScript开发人员轻松共享打包的代码模块。

既然是经常用的,那也整理整理👾(只列出常用的命令)。

npm

官方指路:docs.npmjs.com/about-seman…

按官方来讲,版本号应该是:主版本号.次版本号.修订号

代码状态阶段规则示例版本
初版新产品从1.0.0开始1.0.0
向后兼容的错误修复补丁发布递增第三位数1.0.1
向后兼容的新功能轻微释放递增中间数字并将最后一位重置为零1.1.0
更改会破坏向后兼容性主要发行递增第一位并将中间和最后一位重置为零2.0.0

常见的版本格式

官方指路:semver.npmjs.com/

"1.2.3"

表示精确版本号。只匹配1.2.3的版本

"^1.2.3"

在相同的主要范围内包含比特定版本更大的所有内容

主版本号 不等于 0时,匹配 当前版本号 到该 主版本号 的最大的版本

主版本号 等于 0次版本号 不等于 0 时,匹配 当前版本号 到该 次版本号 的最大的版本

主版本号 等于0次版本号 等于 0修订号 不等于 0 时,匹配 当前版本号 到该 修订号 的最大的版本

"^1.2.3" 匹配 ">= 1.2.3 < 2.0.0"

"^0.2.3" 匹配 ">= 0.2.3 < 0.3.0"

"^0.0.3" 匹配 ">= 0.0.3 < 0.0.4"

"~1.2.3"

在同一较小范围内包含大于特定版本的所有内容

修订号 时,匹配 当前版本号 到该 修订号 最大版本

没有 修订号,有 次版本号 时,匹配 当前版本号 到该 次版本号 最大版本

没有 修订号,没有 次版本号,有 主版本号 时,匹配 当前版本号 到该 主版本号 最大版本

"~1.2.3" 匹配 ">= 1.2.3 < 1.3.0"

"~1.2" 匹配 ">= 1.2.0 < 1.3.0"

"~1" 匹配 ">= 1.0.0 < 2.0.0

dependencies - 生产依赖

众所周知,生产环境需要的东西,你都需要装在这个选项里供生产环境使用。例如:vuevue-routervuex

官方指路:docs.npmjs.com/cli/install

安装

-P, --save-prod:包裹将出现在您的中dependencies。这是默认设置,除非-D-O存在。

npm install <package_name> // 既然是默认,那就没必要加参数了
// 等价于
npm i <package_name>

卸载

npm uninstall <package_name>
// 等价于
npm uni <package_name>

devDependencies - 开发依赖

官方指路:docs.npmjs.com/cli/install

众所周知,只是开发环境需要的东西,你都应该装在这个选项里只供开发环境使用。例如:eslintsass

安装

-D, --save-dev:包裹将出现在您的中devDependencies

npm install <package_name> --save-dev
// 等价于
npm install <package_name> -D

卸载

npm uninstall <package_name> --save-dev
// 等价于
npm uni <package_name> -D

也许npm走的国外服务器,时不时会抽抽风下不动。那可以参数一下淘宝的cnpm...👇

cnpm

官方指路:淘宝 NPM 镜像

这是一个完整 npmjs.org 镜像,你可以用此代替官方版本(只读),同步频率目前为 10分钟 一次以保证尽量与官方服务同步。

安装/换源

npm install -g cnpm --registry=https://registry.npm.taobao.org

用法同上,但cnpm install <package_name>的时候,默认不会添加进dependencies - 生产依赖。需要使用cnpm install <package_name> -S

为什么是-S不是-P?我也不知道🙄。

也许你时常能听到,用cnpm的时候在某些情况下会出 bug(作者还没遇到过)。既然有可能,那就试试yarn...👇

yarn

Yarn是您的代码的包管理器。它使您可以使用代码并与世界各地的其他开发人员共享代码。Yarn快速,安全且可靠地执行此操作,因此您不必担心。

在你使用的时候,你看着安装/卸载的进度条,你会感受到什么叫纵享丝滑

用法官网已经写得很清楚了,直接复制粘贴。

安装

官方指路:yarnpkg.com/getting-sta…

全局安装来一手

npm install -g yarn

访问命令列表

yarn help

开始一个新项目

yarn init

安装所有依赖项

yarn
yarn install

添加依赖项

yarn add [package]
yarn add [package]@[version]
yarn add [package]@[tag]

将依赖项添加到不同类别的依赖项中

yarn add [package]  # dependencies
yarn add [package] -D # devDependencies

升级依赖

yarn up [package]
yarn up [package]@[version]
yarn up [package]@[tag]

删除依赖

yarn remove [package]

升级yarn

yarn set version latest
yarn set version from sources

总结

npm抽风的时候,可以使用yarn。当然最好是一直都用yarn

npm常用命令

npm i  # 安装所有依赖项
npm i <package_name>  # 安装包 默认安装到 生产环境 dependencies中
npm uni <package_name>  # 卸载包
npm i <package_name> -D # 安装包到 开发环境 devDependencies中

yarn常用命令

yarn  # 安装所有依赖项
yarn add <package_name>  # 安装包 默认安装到 生产环境 dependencies中
yarn remove <package_name>  # 卸载包
yarn add <package_name> -D # 安装包到 开发环境 devDependencies中

博客链接: github gitee