详解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条件判断使用小技巧总结
Sep 08 Javascript
jquery text,radio,checkbox,select操作实现代码
Jul 09 Javascript
jQuery EasyUI API 中文文档 - Form表单
Oct 06 Javascript
jQuery处理xml格式的返回数据(实例解析)
Nov 28 Javascript
jQuery中常用的遍历函数用法实例总结
Sep 01 Javascript
深入理解js promise chain
May 05 Javascript
浅谈js的ajax的异步和同步请求的问题
Oct 07 Javascript
js html5 css俄罗斯方块游戏再现
Oct 17 Javascript
JS批量替换内容中关键词为超链接
Feb 20 Javascript
如何使用CSS3+JQuery实现悬浮墙式菜单
Jun 18 jQuery
p5.js绘制创意自画像
Nov 04 Javascript
ES6中Set和Map用法实例详解
Mar 02 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获取文件夹大小函数用法实例
2015/07/01 PHP
如何通过Linux命令行使用和运行PHP脚本
2015/07/29 PHP
php制作的简单验证码识别代码
2016/01/26 PHP
全面解析PHP面向对象的三大特征
2017/06/10 PHP
PHP count()函数讲解
2019/02/03 PHP
php设计模式之职责链模式定义与用法经典示例
2019/09/19 PHP
Maps Javascript
2007/01/22 Javascript
html文本框提示效果的示例代码
2014/06/28 Javascript
基于NodeJS的前后端分离的思考与实践(三)轻量级的接口配置建模框架
2014/09/26 NodeJs
分享20款美化网站的 jQuery Lightbox 灯箱插件
2014/10/10 Javascript
谈谈JavaScript异步函数发展历程
2015/09/29 Javascript
js实现将选中内容分享到新浪或腾讯微博
2015/12/16 Javascript
javascript闭包概念简单解析(推荐)
2016/06/03 Javascript
JS本地刷新返回上一页代码
2016/07/25 Javascript
js实现网页定位导航功能
2017/03/07 Javascript
Bootstrap 模态框(Modal)带参数传值实例
2017/08/20 Javascript
JavaScript实现职责链模式概述
2018/01/25 Javascript
javascript、php关键字搜索函数的使用方法
2018/05/29 Javascript
小程序从手动埋点到自动埋点的实现方法
2019/01/24 Javascript
JavaScript中将值转换为字符串的五种方法总结
2019/06/06 Javascript
浅谈bootstrap layer.open中end的使用方法
2019/09/12 Javascript
使用Vue生成动态表单
2019/11/26 Javascript
js实现贪吃蛇游戏(简易版)
2020/09/29 Javascript
python动态加载包的方法小结
2016/04/18 Python
Python的地形三维可视化Matplotlib和gdal使用实例
2017/12/09 Python
django使用haystack调用Elasticsearch实现索引搜索
2019/07/24 Python
PyTorch之图像和Tensor填充的实例
2019/08/18 Python
十月份红领巾广播稿
2014/01/22 职场文书
卫生巾广告词
2014/03/18 职场文书
法人委托书范本
2014/04/04 职场文书
工资收入证明样本(5篇)
2014/09/16 职场文书
小学生2014国庆节演讲稿:祖国在我心中
2014/09/21 职场文书
见习报告格式范文
2014/11/08 职场文书
前台接待岗位职责
2015/02/03 职场文书
小学六一儿童节活动总结
2015/05/05 职场文书
Python Matplotlib绘制两个Y轴图像
2022/04/13 Python