博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
[vscode]快速更新package.json里的依赖版本
阅读量:6296 次
发布时间:2019-06-22

本文共 1302 字,大约阅读时间需要 4 分钟。

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

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

图片描述图片描述图片描述

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

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",惊喜不惊喜?意外不意外?

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

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

安装

  1. 打开vscode

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

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

  4. 点击安装

使用

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

图片描述

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

注意事项

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

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

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

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

转载地址:http://hvvta.baihongyu.com/

你可能感兴趣的文章
PowerDesigner反向生成物理数据模型
查看>>
杰思安全获数千万元A+轮投资,绿盟科技领投,德联资本跟投
查看>>
Google 的最后努力 :请求最高法院撤回 88 亿罚单
查看>>
服气!3小时竟能写出风靡全球的小游戏,还顺手就赚的盆满钵满
查看>>
第七篇:SpringBoot 2.x集成Lombok
查看>>
【对讲机的那点事】带你玩转灵通LT33公网集群对讲机
查看>>
Kettle性能调优汇总
查看>>
浅谈网络爬虫中广度优先算法和代码实现
查看>>
第十九章:集合视图(二十一)
查看>>
分享一个算法,计算能在任何背景色上清晰显示的前景色
查看>>
javaScript系列 [01]-javaScript函数基础
查看>>
Silverlight & Blend动画设计系列五:故事板(StoryBoards)和动画(Animations)
查看>>
监控MySQL数据库的主从状态的shell脚本
查看>>
hexo部署在Github-Page流程
查看>>
特征值与特征向量的几何含义(转)
查看>>
MyBatis3 xml映射文件配置
查看>>
【WebAPI No.5】Core WebAPI中的自定义格式化
查看>>
Could not get dialect instance.
查看>>
yum源失效,yum命令报错404
查看>>
Jmeter 压测 http(s)
查看>>