[vscode]快速更新package.json里的依赖版本

栏目: 后端 · 前端 · 发布时间: 6年前

内容简介:[vscode]快速更新package.json里的依赖版本

vscode 是个超级好用的开发工具,谁用谁知道。

不少前端开发者可能有和我一样的依赖保绿强迫症,简单说,就是见不得下面这些图标:

[vscode]快速更新package.json里的依赖版本 [vscode]快速更新package.json里的依赖版本 [vscode]快速更新package.json里的依赖版本

但是手动一个个依赖检查么?不现实,也太累了。

npm update ?那说明你还是太年轻了,看看它的说明吧:

This command will update all the packages listed to the latest version (specified by the tag config), respecting semver .

注意粗体部分,也就是说, npm update 注定了不能帮你把依赖更新到“真正的”最新版,因为 semver 是有要求的。

譬如,你有一个依赖 dep1 ,它的版本信息如下:

{
   "dist-tags": { "latest": "1.2.2" },
   "versions": [
     "1.2.2",
     "1.2.1",
     "1.2.0",
     "1.1.2",
     "1.1.1",
     "1.0.0",
     "0.4.1",
     "0.4.0",
     "0.2.0"
   ]
 }

然后,假设你的 package.json 里是这样写的:

"dependencies": {
   "dep1": "^1.1.1"
 }

那么 npm update 之后,它会变成 "dep1": "^1.2.2" ,这很好,对不对?

但如果你的 package.json 里是这样写的:

"dependencies": {
   "dep1": "~1.1.1"
 }

那么 npm update 之后,它会变成 "dep1": "^1.1.2" ,惊喜不惊喜?意外不意外?

如果不理解 ~^ 的区别,那你需要去看 dependencies-semver

因为这个缘故,我想了想,可以写个 插件 解决问题。

安装

  1. 打开 vscode

  2. 按下 ⌘ + P (windows下是 ctrl + P ),打开 Command Palette

  3. 键入 ext install vscode-npm-dependency 找到 npm-dependency插件

  4. 点击安装

使用

安装完毕后,选择一个你要更新的项目,并打开 package.json 文件,然后在打开的文档里,右键选择 Npm update (latest) ,效果如下:

[vscode]快速更新package.json里的依赖版本

你的 package.json 就这样被更新了。

注意事项

有朋友的依赖直接用了 Git URL ,那么这些依赖是会被忽略的,因为 npm registry 是拿不到这个包版本信息的。

有朋友用了自己部署的 npm registry ,例如,通过 cnpm 自己搭建了内部服务器,并且向其提交过私有包,那么显然从官方的 https://registry.npmjs.org 是不可能同步到你的私有包的,这就需要配置了,给你的 vscode 增加如下配置(可以是工作空间级别的,当然也可以是用户级别的):

{
    "npm.registry": "https://registry.npmjs.org/"
}

npm.registry 的值,可以替换为: https://registry.npm.taobao.org 等其他 registry ,然后就可以开心的更新了


以上所述就是小编给大家介绍的《[vscode]快速更新package.json里的依赖版本》,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对 码农网 的支持!

查看所有标签

猜你喜欢:

本站部分资源来源于网络,本站转载出于传递更多信息之目的,版权归原作者或者来源机构所有,如转载稿涉及版权问题,请联系我们

网络英雄传

网络英雄传

郭羽、刘波 / 江苏凤凰文艺出版社 / 2018-6 / 59.80元

“商战鬼才郭羽、营销奇才刘波强强联手,凝集十年实战经验,倾力打造商战巨作。” 这是一个商业竞争和资本激战交织的惊心动魄的创业交锋故事。 由郭天宇、刘帅共同创立的在线旅游公司万全天盛凭借其出色的商业模式异军突起,与老牌巨头“51旅游网”两强相争,但国际巨头通远来势汹汹,国内在线旅游市场进入战火纷飞的“三国杀”时代,分踞杭、沪、京三地互相“搏杀”。中国新兴的互联网公司面对国际巨头的入侵,毫不退缩......一起来看看 《网络英雄传》 这本书的介绍吧!

HTML 编码/解码
HTML 编码/解码

HTML 编码/解码

URL 编码/解码
URL 编码/解码

URL 编码/解码

正则表达式在线测试
正则表达式在线测试

正则表达式在线测试