Npm 包版本知识总结
2019独角兽企业重金招聘Python工程师标准>>>
1. npm 发布包的版本指定规则
使用 Npm 发布一个包的时候,往往要遵循 x.y.z 的规则,发布的第一个版本一般为 1.0.0。
- z 补丁号。修改某个功能的 Bug 时,z 值 +1 变成 1.0.1;
- y 小版本号。增加一个新功能,且不影响已有功能,y 值 +1 变成 1.1.0;
- x 大版本号。引入新的变化,破坏向后兼容,x 值 +1 变成 2.0.0。
2. 关于向后兼容与向前兼容
向前兼容和向后兼容可以用下面这个例子方便理解。
- 向后兼容:Windows 10要能运行为Windows 3.1开发的程序;
- 破坏向后兼容:新版本的系统不能运行老版本系统上的程序,可以理解为整容的跟以前完全不一样了;
- 向前兼容:Windows 3.1要能运行为Windows 10开发的程序。
3. package.json 中包版本 ~ 与 ^ 说明
package.json 中会记录很多包的版本号,前面大多出现 ^ 和 ~ 符号,表示某个包的版本号取值范围,包的版本号在这个范围之内都是可以的。
"devDependencies": {"axios": "^0.15.3","babel-eslint": "^6.1.2","babel-plugin-dva-hmr": "^0.3.2","babel-plugin-import": "^1.1.1","draftjs-to-html": "^0.7.0","eslint": "^3.17.1","eslint-config-airbnb": "^9.0.1","eslint-plugin-import": "^1.16.0","eslint-plugin-jsx-a11y": "^1.4.2","eslint-plugin-react": "^5.1.1","less-vars-to-js": "^1.1.2","path-to-regexp": "^1.7.0","rc-tween-one": "^1.0.0","redbox-react": "^1.2.10","roadhog": "0.6.0-beta.6"},
假定某个包的版本是 1.4.0
~1.4.0
表示:>=1.4.0 && < 1.5.0
说明:小版本不变,补丁号可以取最大值。
^1.4.0
表示:>=1.4.0 && < 2.0.0
说明:大版本号不变,小版本号可以取最大值。
转载于:https://my.oschina.net/dkvirus/blog/1490420
Npm 包版本知识总结相关推荐
- npm(四):剖析npm包版本管理机制
Nodejs成功离不开 npm 优秀的依赖管理系统.在介绍整个依赖系统之前,必须要了解 npm如何管理依赖包的版本,本章将介绍 npm包 的版本发布规范.如何管理各种依赖包的版本以及一些关于包版本的最 ...
- 微信支付v3版本npm包
wechatpay-node-v3 # 微信支付v3 支持在ts和js中使用 欢迎大家加入一起完善这个api 前言 微信官方在2020-12-25正式开放了v3版本的接口,相比较旧版本v2有了不少改变 ...
- Node.js 官网入门教程(二) npm(安装、包版本、卸载、npx)、package.json(scripts、devDependencies)package-lock.json(语义版本规则符号
Node.js 官网入门教程(二) npm(包管理.安装.包版本.卸载.npx).package.json(scripts.devDependencies).package-lock.json(语义版 ...
- Web前端培训知识分享:2种离线安装npm包的方法
学习Web前端的朋友都知道JavaScript是前端绕不开的话题,也是学习的重难点.而npm是连接JavaScript的一扇大门,能解决NodeJS代码部署上的很多问题,很多人在学习时对于npm包怎么 ...
- Vue3学习笔记- NPM包管理工具
导语 这篇分享是关于Vue3 系列的学习知识的整理的开始,能够对大家学习带来帮助.也是对自己能力的一种提升. 学习大纲 认识NPM 安装NPM 使用NPM NPM中级用法 了解package.js ...
- 规范升级 NPM 包
规范升级 NPM 包 前言 在日常工作中,当组件跨项目使用时,我们往往会选择把组件抽成 npm 包.那么在 npm 开发以及发布的过程中有什么需要注意的事项吗?本文将从我自己的角度,来为大家介绍一下我 ...
- vue插件开发、文档书写、github发布、npm包发布一波流
做vue开发,基本的操作会了之后是不是特想撸一撸vue的插件,让自己的代码可(骚)复(骚)用(的).别急,今天和你一起手摸手,哦呸,是手把手,一起撸一管,哦再呸,是封装一个基于vue的支付宝密码弹窗插 ...
- 微信小程序开发常用的npm包
本篇主要介绍在微信小程序中使用 npm 包以及使用微信开发者工具开发微信小程序时最常用的 Vant Weapp 小程序 UI 组件库.miniprogram-api-promise 将 API Pro ...
- 微信小程序学习笔记(五) npm包+全局数据共享+分包
文章目录 1. 使用npm包 1.1 小程序对 npm 的支持与限制 1.2 Vant Weapp 组件库 1.2.1 安装 Vant 组件库 1.2.2 使用 Vant 组件 1.2.3 定制全局主 ...
最新文章
- 关系数据库非关系数据库_如何与关系数据库最佳配合
- 下载apk文件之后变成zip的解决办法
- android电视打印信息解析,关于液晶电视打印信息
- HDOJ1874 ( 畅通工程续 ) 【单源最短路径】
- sqlserver2014内存数据库特性介绍
- 一文读懂-Impala
- zTree实现地市县三级级联报错(一)
- 联想l430主板图纸_L430开箱+拆机+换内存+换U+评测+拷机15小时,图多杀猫
- 大数据统计分析毕业设计_数据分析毕业设计 大数据可视化毕业设计
- spring 事务传播级别
- 星期一到星期日的英文_缩写_读音_巧记方法
- 微信小程序——根据当前定位查询附近商家
- 《让你受益一生的59个好习惯》感悟
- 宝付大叔的家书,满满的父爱
- Android之SQLite数据库及SQLiteStudio工具的使用
- caffe深度学习框架入门
- 【实训项目】教师工作量管理系统(完整程序)
- 谷歌浏览器下载完整版(非在线下载安装)
- XENAPP 7.6 和 XENDESKTOP 7.6 初体验之四 创建桌面计算机目录
- java8 list max_Java 在List 上使用.max()和.stream()