node 包管理内容整理,常用工作流。整理中

# npm 命令

# 安装包 install | i | add

详情
cmddescriptiondemo
npm i初始化项目- git clone <project> & cd $_
- npm i
npm i [<@scope>/]<pkg>安装最新版本 npm 包- npm i react -S
- npm i @vue/cli -g
npm i [<@scope>/]<pkg>@tag
npm i [<@scope>/]<pkg>@<version>指定版本$ npm i jquery@3.5.1
npm i [<@scope>/]<pkg>@<version range>指定版本范围$ npm i jquery@">=1.11.0 <2.0.0"

args

[--save-prod|--save-dev|--save-optional] [--save-exact] [--no-save]

argaliaspositiondesc
--global-g1忽略项目全局安装
--save-prod (默认)--save , -S1保存到 package.json/dependencies
--save-dev-D1保存到 package.json/devDependencies
--save-optional-O1保存到 package.json/optionalDependencies
--save-exact-E2安装精确版本
--no-save2不会记录到 package.json , 也无法用 npm ls 查出来,但是可以被 npm uninstall 卸载
  • 一个包只能安装在 dependencies , devDependencies , optionalDependencies , peerDependencies 其中一个位置上
详情

args

npm uninstall [<@scope>/]<pkg>[@<version>]...

[--save-prod|--save-dev|--save-optional] [--no-save]

  • --no-save 只会删除包,不会修改 package.json
  • 其他参数都无效,无论依赖添加在哪里都会从 package.json 删除

# 更新包 update | up | upgrade

详情

npm update [-g] [<pkg>...]

根据版本号约束规则进行更新

# 发布包 publish

详情
  1. 切换 npm 官方源 (或者自己的源) $ npm config set registry http://registry.npmjs.org/
  2. 登录并输入信息: $ npm login
  3. 发布: $ npm publish --access public

# 约定

# 版本号约束

major . minor . patch
主版本号・次版本号・修补版本号

类型含义例子
major.minor.patch固定版本 -E1.12.5
^major.minor.patch锁定左侧第一个非零版本 (默认)- ^1.12.5 : <2.0.0
- ^0.2.0 : <0.3.0
- ^0.0.17 : 0.0.17
~major.minor.patch只允许更新 patch 版本- ~1.12.5 : <1.13.0

举例

s
{
  "dist-tags": { "latest": "1.2.2" },
  "versions": [
    "1.2.2", "1.2.1", "1.2.0",
    "1.1.2", "1.1.1",
    "1.0.0",
    "0.4.1", "0.4.0",
    "0.2.0"
  ]
}
// package: ^1.1.1 => 1.2.2
// package: ~1.1.1 => 1.1.2
// package:  1.1.1 => 1.1.1
// package: ^0.2.0 => 0.2.0
// package: ^0.4.0 => 0.4.1

# npm 切换源

npm

  • 淘宝源: $ npm config set registry https://registry.npm.taobao.org
  • 官方源: $ npm config set registry http://www.npmjs.org

npm with nrm

  1. 安装 nrm $ npm i nrm -g
  2. 查看可使用的源 $ nrm ls
  3. 切换源 $ nrm use taobao

# package.json 为命令添加软连接

n
// package.json
{
  // ...
  "scripts": {
    "build": "./node_modules/.bin/webpack"
  }
}

运行

$ npm run build
$ yarn build

# yarn 命令

# yarn 安装

  • linux (CentOS)
  1. 下载 $ wget https://github.com/yarnpkg/yarn/releases/download/v1.7.0/yarn-v1.7.0.tar.gz
  2. 解压 $ tar -zxvf yarn-v1.7.0.tar.gz -C /usr/local/src
  3. 添加软连接 $ ln -s /usr/local/src/yarn-v1.7.0/bin/yarn /usr/bin/yarn

# yarn 升级

  • MacOS: $ brew update yarn

# yarn flow

# yarn 切换源

  • 淘宝源: $ yarn config set registry https://registry.npm.taobao.org
  • 官方源: $ yarn config set registry https://registry.yarnpkg.com

# yarn 清除缓存

h
$ yarn cache clean
  • package.json 大数据分析
  • 如何通过 npm 窃取信用卡密码?
更新于 阅读次数

请我喝[茶]~( ̄▽ ̄)~*

不会游泳 微信支付

微信支付

不会游泳 支付宝

支付宝

不会游泳 贝宝

贝宝