使用Yarn代替NPM

Yarn是Facebook最新的包管理器。Yarn的使用方式跟npm类似,但命令上还是有所区别。
Yarn官网:https://yarnpkg.com/zh-Hans/

安装

参考Yarn官方安装文档

源码安装

  1. 下载源码

    1
    2
    3
    4
    5
    wget https://github.com/yarnpkg/yarn/releases/download/v1.9.4/yarn-v1.9.4.tar.gz
    #/usr/local/yarn/
    mkdir /usr/local/yarn/
    mv ./yarn-v1.9.4.tar.gz /usr/local/yarn/
  2. 解压源码

    1
    tar -xvf yarn-v1.9.4.tar.gz
  3. 配置环境变量

    1
    2
    3
    4
    5
    6
    7
    8
    9
    vim /etc/profile
    # yarn
    export YARN_HOME=/usr/local/node/yarn-v1.9.4
    export PATH=$YARN_HOME/bin:$PATH
    #编译/etc/profile 使配置生效
    source /etc/profile
  4. 验证

    1
    yarn --version

简单使用

开始新项目

1
yarn init

添加依赖包

1
2
3
4
yarn add [package]
yarn add [package]@[version]
yarn add [package]@[tag]
Adding a dependency to different categories of dependencies

分别添加到 devDependencies、peerDependencies 和 optionalDependencies:

1
2
3
yarn add [package] --dev
yarn add [package] --peer
yarn add [package] --optional

升级依赖包

1
2
3
yarn upgrade [package]
yarn upgrade [package]@[version]
yarn upgrade [package]@[tag]

移除依赖包

1
yarn remove [package]

安装项目的全部依赖

1
2
3
4
yarn
#或者
yarn install

全局

1
2
3
4
5
yarn global [add|bin|ls|remove|upgrade] [flags]
#相当于
npm -g

更多命令详情 Yarn CLI

配置淘宝源

全局使用

1
yarn config set registry http://registry.npm.taobao.org

切换会原来的源

1
yarn config set registry https://registry.npmjs.org/

使用cnpm

1
2
3
npm install -g cnpm --registry=https://registry.npm.taobao.org
cnpm install express

避免与npm混用

yarn的全局node_modules位置和npm的不同。npmbin目录在C:/Users/shipengqi/AppData/Roaming/npmyarn会把C:/Users/shipengqi/AppData/Roaming/npm/node_modules目录的结构改掉,
并把之前用npm安装的一些模块删除掉,包括npm本身依赖的模块,最终导致npm不可用。

global add 的命令报错 command not found

1
yarn global bin

先使用上面的命令查看yarn全局安装的二进制文件的位置。找到后把这个目录配置到环境变量。