• 技术文章 >web前端 >js教程

    yarn是什么?yarn是如何代替npm管理前端项目模块依赖的?

    巴扎黑巴扎黑2017-09-05 09:43:40原创2600
    这篇文章主要给大家介绍了关于利用yarn代替npm管理前端项目模块依赖的相关资料,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧。

    本文主要给大家介绍了关于yarn代替npm管理前端项目模块依赖的相关内容,分享出来供大家参考学习,下面话不多说了,来一起看看详细的介绍吧。

    什么是 yarn?

    简单来说,yarn 是一个与 npm 功能相同的工具,用于前端项目的依赖管理。在使用 npm 的项目中,使用 npm 命令的地方都可以使用 yran 来代替。

    为什么要使用 yarn 替代 npm 呢?yarn 相对 npm 来说,主要的特点有:

    好吧,其实 npm 也在不断的优化改进中。但 yarn 确实有很多亮点,至少当前是非常值得你去使用的。

    yarn 使用快速上手

    安装

    虽然安装 yarn 可以不依赖 npm,但这里还是建议你使用 npm 来安装吧,快速而简洁:


    npm i -g yarn

    在项目中使用

    首次初始化项目时执行,在每次项目启动/构建之前,也都应执行一次,以保证本地依赖得到及时更新。

    该命令会检查 package.json 和 yarn.lock 文件中的依赖,当有其内容更新,会进行依赖更新安装。


    yarn <install>

    依赖更新。当你希望更新依赖模块到其最新版本时执行该命令。


    yarn upgrade

    yarn 常用命令

    开始新项目


    yarn init

    添加依赖包


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

    升级依赖包


    yarn upgrade [package]
    yarn upgrade [package]@[version]
    yarn upgrade [package]@[tag]

    移除依赖包


    yarn remove [package]

    安装项目的全部依赖


    yarn

    或者


    yarn install

    yarn 使用实践建议

    我们选择 yarn 的主要原因是依赖安装速度快,默认生成的 yarn.lock 会保证所有成员的模块依赖目录能够很好的保持一致。

    yarn install 和 yarn upgrade 的执行逻辑,可以让你可以很清晰的管理本地依赖的版本更新时机,又能很好的让所有开发人员的本地依赖保持一致性。

    使用 npm install 则有些乱,当你不想写死版本号依赖时,它总会安装依赖包最新可用的版本,但这在有时候并不是你想要的。

    在 yarn 之前,我们使用的是 npm+淘宝仓库方案,也会使用 cnpm。在国内,cnpm 的依赖安装速度比 yarn 还要快,但 cnpm 在 windows 下通过创建链接引用的方式管理包依赖,可能会带来一些问题。

    现在我们会默认使用淘宝仓库,使用 npm 管理全局依赖,使用 yarn 管理具体项目内的依赖。

    在一个新的项目中使用 yarn,我们会这么来做:

    你是如何来使用 yarn 的呢?欢迎分享你的经验。

    以上就是yarn是什么?yarn是如何代替npm管理前端项目模块依赖的?的详细内容,更多请关注php中文网其它相关文章!

    声明:本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn核实处理。

    前端(VUE)零基础到就业课程:点击学习

    清晰的学习路线+老师随时辅导答疑

    自己动手写 PHP MVC 框架:点击学习

    快速了解MVC架构、了解框架底层运行原理

    专题推荐:yarn 是什么 代替
    上一篇:JS如何将颜色的10进制转化成rgba格式详细教程 下一篇:自己动手写 PHP MVC 框架(40节精讲/巨细/新人进阶必看)

    相关文章推荐

    • ❤️‍🔥共22门课程,总价3725元,会员免费学• ❤️‍🔥接口自动化测试不想写代码?• 浅析Angular中的Change Detection机制• 浅析Angular变更检测中的订阅异步事件• 一文聊聊node中的path模块• Angular学习之聊聊Http ( 错误处理 / 请求拦截 )• 一文带你深入了解Node中的Buffer类
    1/1

    PHP中文网