yarn npm 使用的正确姿势

1,494 阅读3分钟

一个跟npm一样的包管理工具

Yarn 缓存了每个下载过的包,所以再次使用时无需重复下载。

这一点也是我喜欢的一点,下载非常稳,不存在丢包情况

安装

假设你已经装过Node,已经切换了淘宝镜像源

cnpm i yarn -g  // 使用命令行安装
yarn --version   // 成功出现版本号

切换淘宝镜像源

// 修改为 淘宝镜像源
yarn config set registry https://registry.npm.taobao.org -g

// 修改 node-sass镜像源,内容比较大,处理 scss
yarn config set sass_binary_site http://cdn.npm.taobao.org/dist/node-sass -g

 // 查看镜像源已经修改为淘宝
yarn config get registry

重置缓存位置

如果你windows用户, 你会发现为什么系统盘会越来越大,很影响系统性能

npm

npm list -g --depth 0 // 查看npm全局模块
npm config set prefix "G:\ProgramFile\nodejs\node_modules\node_global" //    
npm list -g --depth 0 // 在查看npm全局模块

//以前的模块可以直接删掉
npm config get cache //查看缓存位置
npm config set cache "G:\ProgramFile\nodejs\node_modules\node_cache"
npm config get cache //查看缓存位置

npm cache clean --force //清除缓存
npm cache verify   //出现你的新地址就好了

注意cnpm 也要按照以上流程走一波

yarn

//修改全局模块安装位置
yarn global dir //查看
yarn config  set global-folder G:/yarnData/global //自动创建文件夹
yarn global dir  //检查目录位置

yarn cache clean //清除历史缓存

//修改缓存位置
yarn cache dir   //显示yarn显示位置
yarn config set cache-folder D:/yarnData/YarnCache //修改到 D盘,自动创建目录
yarn cache dir //在输出一下目录 看看缓存位置


//测试
yarn global add supervisor //下载测试 ,会自动创建bin目录

supervisor -v 出现版本号 success

常见错误

无法将“全局模块”项识别为 cmdlet、函数、脚本文件或可运行程序的名称

方法一

//  打开设置>更新与安全>开发者选项>PowerShell>点击应用

方法二

第一个不行走第二个,绝对OK

yarn global bin //输入此命令,全局模块引用路径,是否已经设置为新路径
//没有使用现在这个命令设置,注意找到这个文件夹,复制地址栏
yarn config set prefix G:\yarnData\global\bin
//最后后面地址写入系统path环境变量

使用

dependencies 生产环境 yarn add xxx 默认保存到 生产依赖

devDependencies 开发环境 yarn add xxx --dev 保存到开发依赖

如果位置错误需要删除在进行下载,更换位置

下载命令

根据package.json下载, yarn install ->npm install

下载单个模块 yarn add jquery@1.11.3 ->npm i jquery@1.11.3

删除模块||删除全局模块 yarn remove packageName ||yarn global remove create-react-app||

npm uninstall create-react-app -g 删除模块使用 npm不要用cnpm

安装完全局模块需要重启

默认安装环境

默认安装生产环境 依赖 dependencies

安装生产环境依赖 yarn add jquery --save

安装到开发环境依赖 yarn add jquery --dev --save-dev

全局安装 yarn global add xxx -> npm i xxxx -g 先写global add 固定写法

模块更新 yarn upgrade [packageName]

快速删除node_modules

cnpm install rimraf -g 
rimraf node_modules
//升级到最高版本
npm install vue-loader@latest --save-dev