400 028 6601

建站动态

根据您的个性需求进行定制 先人一步 抢占小程序红利时代

怎么使用package.json对依赖包进行版本管理

这篇文章主要介绍“怎么使用package.json对依赖包进行版本管理”的相关知识,小编通过实际案例向大家展示操作过程,操作方法简单快捷,实用性强,希望这篇“怎么使用package.json对依赖包进行版本管理”文章能帮助大家解决问题。

在西湖等地区,都构建了全面的区域性战略布局,加强发展的系统性、市场前瞻性、产品创新能力,以专注、极致的服务理念,为客户提供成都网站建设、网站设计 网站设计制作定制网站,公司网站建设,企业网站建设,高端网站设计,成都全网营销推广,外贸营销网站建设,西湖网站建设费用合理。

怎么使用package.json对依赖包进行版本管理

npm版本号定义

版本格式:X.Y.Z[-string]
其含义为:

举个例子:

6.3.2-alpha的含义为:

扩展阅读:语义化版本 2.0.0

package.json怎么识别依赖版本

将按下述代码进行阐释:

"vue": "~2.5.22",
"vue-class-component": "^6.0.0",
"vue-router": "3.0.1",
"express": "latest",
"mongoose": "*",

怎么使用package.json对依赖包进行版本管理

怎么使用package.json对依赖包进行版本管理

"test": "git+ssh://git@github.com:npm/cli.git#v1.0.27"

扩展阅读:npm docs - dependencies

不要太相信npm包的版本号!

如题,这个是血的教训换来的经验。

笔者在使用system.js时,使用的版本限制是:system.js: "^6.3.2"

在安装依赖的时候,意外安装了> 6.3.2的版本,导致项目运行出错。

原因就是system.js作者,没有按照semver规范,进行版本号命名,导致笔者的项目,引入了不可向下兼容的更新,进而使项目运行出错。

dependencies、devDependencies与peerDependencies

dependencies

生产环境中使用到的依赖,统一安装在dependencies下。

举个例子:

"dependencies": {
	"chalk": "^2.4.2",
	"commander": "^3.0.0",
	"fs-extra": "^8.1.0",
	"inquirer": "^6.5.0",
	"mem-fs": "^1.1.3",
	"mem-fs-editor": "^6.0.0",
	"shelljs": "^0.8.3"
}

上述代码,是笔者做的cli工具包的package.json中的片段。
shelljs用于操作文件,如果改在devDependencies声明,则用户安装当前工具包后,运行会报错。
因为devDependencies字段声明的依赖,在npm install 工具包时,是不会安装的。必须在dependencies字段中声明,才会被安装。

devDependencies

生产环境不需要使用的依赖,都需要安装在devDependencies下。
因为生产环境下,是不会安装devDependencies字段下的依赖的。

举个例子:

"devDependencies": {
	"@commitlint/cli": "^8.1.0",
	"@commitlint/config-conventional": "^8.1.0",
	"commitizen": "^4.0.3",
	"commitlint-config-cz": "^0.12.1",
	"cz-customizable": "^6.2.0",
	"standard-version": "^7.0.0"
}

上述代码,是笔者做的cli工具包的package.json中的片段。
commitizen是笔者用于规范Git提交规范的依赖包,只在开发环境中使用,所以在devDependencies中声明。

peerDependencies

当开发一些插件和工具包时,对使用方的运行环境的依赖包版本有要求,可以使用peerDependencies字段进行声明。

举个例子:

{
  "name": "tea-latte",
  "version": "1.3.5",
  "peerDependencies": {
    "tea": "2.x"
  }
}

当前工具tea-latte,依赖tea包。而且,要求tea包是主版本2。

当不满足要求时,控制台会进行报错处理。

注意
npm v7版本, peerDependencies会默认安装。
npm  v3 到 npm v6版本, peerDependencies不会自动安装。

关于“怎么使用package.json对依赖包进行版本管理”的内容就介绍到这里了,感谢大家的阅读。如果想了解更多行业相关的知识,可以关注创新互联行业资讯频道,小编每天都会为大家更新不同的知识点。


网站标题:怎么使用package.json对依赖包进行版本管理
分享链接:http://mbwzsj.com/article/jpiipj.html

其他资讯

让你的专属顾问为你服务