详解package.json版本号规则


Posted in Javascript onAugust 01, 2019

版本的格式

major.minor.patch

主版本号.次版本号.修补版本号

patch:修复bug,兼容老版本

minor:新增功能,兼容老版本

major:新的架构调整,不兼容老版本

依赖版本号规则

version

必须匹配某个版本

如:1.1.2,表示必须依赖1.1.2版

>version

必须大于某个版本

如:>1.1.2,表示必须大于1.1.2版

>=version

可大于或等于某个版本

如:>=1.1.2,表示可以等于1.1.2,也可以大于1.1.2版本

<version

必须小于某个版本

如:<1.1.2,表示必须小于1.1.2版本

<=version

可以小于或等于某个版本

如:<=1.1.2,表示可以等于1.1.2,也可以小于1.1.2版本

~version

大概匹配某个版本

如果minor版本号指定了,那么minor版本号不变,而patch版本号任意

如果minor和patch版本号未指定,那么minor和patch版本号任意

如:~1.1.2,表示>=1.1.2 <1.2.0,可以是1.1.2,1.1.3,1.1.4,.....,1.1.n

如:~1.1,表示>=1.1.0 <1.2.0,可以是同上

如:~1,表示>=1.0.0 <2.0.0,可以是1.0.0,1.0.1,1.0.2,.....,1.0.n,1.1.n,1.2.n,.....,1.n.n

^version

兼容某个版本

版本号中最左边的非0数字的右侧可以任意

如果缺少某个版本号,则这个版本号的位置可以任意

如:^1.1.2 ,表示>=1.1.2 <2.0.0,可以是1.1.2,1.1.3,.....,1.1.n,1.2.n,.....,1.n.n

如:^0.2.3 ,表示>=0.2.3 <0.3.0,可以是0.2.3,0.2.4,.....,0.2.n

如:^0.0,表示 >=0.0.0 <0.1.0,可以是0.0.0,0.0.1,.....,0.0.n

x-range

x的位置表示任意版本

如:1.2.x,表示可以1.2.0,1.2.1,.....,1.2.n

*-range

任意版本,""也表示任意版本

如:*,表示>=0.0.0的任意版本

version1 - version2

大于等于version1,小于等于version2

如:1.1.2 - 1.3.1,表示包括1.1.2和1.3.1以及他们件的任意版本

range1 || range2

满足range1或者满足range2,可以多个范围

如:<1.0.0 || >=2.3.1 <2.4.5 || >=2.5.2 <3.0.0,表示满足这3个范围的版本都可以

yarn.lock作用

通过上面可知每次下载依赖的版本可能都会不同,这就造成了有时本地build完全没有问题,但是推到服务器或者在别人电脑上就会build失败。

所以yarn.lock会记录所有包的版本以及包的依赖的版本,这样就可以保证每个人下载的依赖版本都是完全相同的,从而避免很多问题。当然npm也有类似功能,不在此赘述。

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持三水点靠木。

Javascript 相关文章推荐
JavaScript 指导方针
Apr 05 Javascript
高效率JavaScript编写技巧整理
Aug 23 Javascript
jquery实现将获取的颜色值转换为十六进制形式的方法
Dec 20 Javascript
jquery超简单实现手风琴效果的方法
Jun 05 Javascript
基于JavaScript的操作系统你听说过吗?
Jan 28 Javascript
Bootstrap入门书籍之(零)Bootstrap简介
Feb 17 Javascript
Jquery获取第一个子元素简单实例
Jun 02 Javascript
微信小程序模板之分页滑动栏
Feb 10 Javascript
Node.js微信 access_token ( jsapi_ticket ) 存取与刷新的示例
Sep 30 Javascript
微信小程序签到功能
Oct 31 Javascript
ES6的Fetch异步请求的实现方法
Dec 07 Javascript
JS数组方法join()用法实例分析
Jan 18 Javascript
ES6 新增的创建数组的方法(小结)
Aug 01 #Javascript
详解基于Wepy开发小程序插件(推荐)
Aug 01 #Javascript
深入浅析Vue中mixin和extend的区别和使用场景
Aug 01 #Javascript
在Vue环境下利用worker运行interval计时器的步骤
Aug 01 #Javascript
详解Vue2.5+迁移至Typescript指南
Aug 01 #Javascript
微信小程序组件传值图示过程详解
Jul 31 #Javascript
vue.js实现回到顶部动画效果
Jul 31 #Javascript
You might like
PHP 加密与解密的斗争
2009/04/17 PHP
浅析51个PHP处理字符串的函数
2013/08/02 PHP
利用PHP生成CSV文件简单示例
2016/12/21 PHP
PHP jpgraph库的配置及生成统计图表:折线图、柱状图、饼状图
2017/05/15 PHP
js常见表单应用技巧
2008/01/09 Javascript
jQuery 判断页面元素是否存在的代码
2009/08/14 Javascript
JavaScript 动态添加表格行 使用模板、标记
2009/10/24 Javascript
jquery validate.js表单验证的基本用法入门
2010/05/13 Javascript
JS判断文本框内容改变事件的简单实例
2014/03/07 Javascript
js怎么判断flash swf文件是否加载完毕
2014/08/14 Javascript
跟我学习javascript的隐式强制转换
2015/11/16 Javascript
Vue.js学习笔记之 helloworld
2016/08/14 Javascript
jQuery多文件异步上传带进度条实例代码
2016/08/16 Javascript
jQuery异步提交表单的两种方式
2016/09/13 Javascript
vue路由教程之静态路由
2019/09/03 Javascript
JavaScript(js)处理的HTML事件、键盘事件、鼠标事件简单示例
2019/11/19 Javascript
微信小程序实现点击页面出现文字
2020/09/21 Javascript
phpsir 开发 一个检测百度关键字网站排名的python 程序
2009/09/17 Python
Python for Informatics 第11章 正则表达式(一)
2016/04/21 Python
关于不懂Chromedriver如何配置环境变量问题解决方法
2019/06/12 Python
用Python解数独的方法示例
2019/10/24 Python
python:目标检测模型预测准确度计算方式(基于IoU)
2020/01/18 Python
python GUI库图形界面开发之PyQt5复选框控件QCheckBox详细使用方法与实例
2020/02/28 Python
Python 字节流,字符串,十六进制相互转换实例(binascii,bytes)
2020/05/11 Python
python 对一幅灰度图像进行直方图均衡化
2020/10/27 Python
服装机修工岗位职责
2013/12/26 职场文书
幼儿园数学教学反思
2014/02/02 职场文书
研讨会主持词
2014/04/02 职场文书
团日活动总结
2014/04/28 职场文书
优秀党员个人总结
2015/02/14 职场文书
大卫科波菲尔读书笔记
2015/06/30 职场文书
三八节祝酒词
2015/08/11 职场文书
2016护理专业求职自荐书
2016/01/28 职场文书
Pytorch 中net.train 和 net.eval的使用说明
2021/05/22 Python
Django Paginator分页器的使用示例
2021/06/23 Python
vue组件冲突之引用另一个组件出现组件不显示的问题
2022/04/13 Vue.js