Yarn 升级: v3 都出了不要再用 yarn1 了
Yarn 升级: v3 都出了不要再用 yarn1 了!
Yarn 默认版本
2202 年了 yarn 也该升级了,什么 pnpm 都跑出来要喧宾夺主了,是时候来看看我们曾经的好帮手 yarn 的改变
默认版本下安装的 yarn 都是 v1 版本的
Yarn 升级公告
实际上作者本身也好久没有去看 yarn 的官网(可能根本没看过hh),yarn 的官方网站一直都有告诉我们可以升级啦!升级传送门:Installation
下面我们马上来体验
开始升级!
第一步:初始化项目/现有项目升级
升级成 yarn v3 有两种方式,第一种是直接在初始化的时候启用
yarn init -2
或是如果是对现有项目我们则可以使用下面命令(有些人用的是 berry 也无伤大雅
yarn set version stable
上面两种方式都是官方推荐的正确做法,还不赶紧回去看文档!
第二步:安装依赖
创建好项目之后先不急着看在干嘛,先写点代码装装看依赖先
先建立一个 ts 文件
/src/index.ts
const msg: string = "Hello World";
console.log(msg);
然后安装一些执行 typescript 需要的依赖
yarn add ts-node typscript -D
可以看到针对指令的输出也得到升级
运行就算了,反正能跑,想试试自己把项目下下来看看
查看变化
最后我们来看一下 yarn 的升级带来的变化
首先看到目录结构
最大的不同在于 yarn v3 不再采用原始的 node_modules 模式了,理由blablabla,给大家整理一下重点
- 查找 node_modules 运行成本高,CI/CD 部署时下载时间太久,依赖版本不稳定(依赖包更新将改变原有版本
- 多个成员间共享依赖仅靠
yarn.lock
是不够的
因此 yarn 提出的解决方案是根据依赖包的特征实现特定的压缩方案,将依赖变成空间极小的压缩包形式放在 .yarn
目录之下
本地运行 yarn 的时候再根据压缩包信息重新展开成类似 node_modules 的形式(不会真的创建该目录),在运行时提供真正的模块依赖
以后在小组多个成员之间写作的时候就不再需要重新安装依赖,甚至是直接连带依赖的压缩包统统都 push 上去!大家一起用的感觉
小结
yarn 的升级相对于 pnpm 是更具破坏性的改变,比起 pnpm 使用链接的方式曲线救国,虽然符合原来的 node_modules 的模式,同时支持更多新特性;yarn 直接把 node_modules 干掉了,改成能让你 push 上去的压缩包形式,非常有意思。
不过对于 yarn v3 的应用我认为多数团队可能会保持观望态度,毕竟如此破坏性的改革对于 npm 上千变万化的包带来的风险是未知的,让我们继续看下去 yarn 的成长。
参考连接
Title | Link |
---|---|
Installation - yarn | https://next.yarnpkg.com/getting-started/install |
Migration - yarn | https://next.yarnpkg.com/getting-started/migration |
升级Yarn 2,摆脱node_modules | https://segmentfault.com/a/1190000040520326 |
Yarn 的 Plug’n’Play 特性 | https://loveky.github.io/2019/02/11/yarn-pnp/ |
Cannot find module using Yarn v. 3 - stackoverflow | https://stackoverflow.com/questions/70446257/cannot-find-module-using-yarn-v-3 |
Yarn v2 介绍 | https://zhuanlan.zhihu.com/p/107343333 |
完整代码示例
https://github.com/superfreeeee/Blog-code/tree/main/front_end/package/yarn_version_upgrade
这篇好文章是转载于:学新通技术网
- 版权申明: 本站部分内容来自互联网,仅供学习及演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系,请提供相关证据及您的身份证明,我们将在收到邮件后48小时内删除。
- 本站站名: 学新通技术网
- 本文地址: /boutique/detail/tanhgghgfg
-
photoshop保存的图片太大微信发不了怎么办
PHP中文网 06-15 -
《学习通》视频自动暂停处理方法
HelloWorld317 07-05 -
Android 11 保存文件到外部存储,并分享文件
Luke 10-12 -
word里面弄一个表格后上面的标题会跑到下面怎么办
PHP中文网 06-20 -
photoshop扩展功能面板显示灰色怎么办
PHP中文网 06-14 -
微信公众号没有声音提示怎么办
PHP中文网 03-31 -
excel下划线不显示怎么办
PHP中文网 06-23 -
excel打印预览压线压字怎么办
PHP中文网 06-22 -
TikTok加速器哪个好免费的TK加速器推荐
TK小达人 10-01 -
怎样阻止微信小程序自动打开
PHP中文网 06-13