electron 中如何安装或更新 vuejs-devtool 最新稳定版
手上正在开发的项目是vue3.0
通过添加 vue-cli-plugin-electron-builder 插件生成 electron 项目,项目在开发过程中发现 beta版的 vuejs-devtool 果然不稳定会出现卡死现象
vuejs-devtool 开发工具 是由 vue-cli-plugin-electron-builder 内引用 electron-devtools-installer 来安装生成
由此产生了更新 electron-devtools-installer 来达到更新 vuejs-devtool 的目的
结果失败了。查了 electron-devtools-installer 插件项目源码后才发现,原来1年没更新了,源文件中引入的vuejs-devtool一直就是 beta 版
还好源码比较简单,就三个主要文件
那就手动来更新一波
=========================================================================
分析:
插件在 background.js 内默认生成如下代码,就是为了在开发启动项目时安装 vuejs-devtool 的
import installExtension, { VUEJS3_DEVTOOLS } from 'electron-devtools-installer'
app.on('ready', async () => {
if (isDevelopment && !process.env.IS_TEST) {
// 安装 vue devTool,
try {
await installExtension(VUEJS3_DEVTOOLS)
} catch (e) {
console.error('Vue Devtools failed to install:', e.toString())
}
}
})
插件安装的 vuejs-devtool 版本默认安装的是 beta 版
beta版不稳定,在数据量多的页面时会导致开发过程中切换到 vuejs-devtool timeline 标签下调试的时候会卡死整个调式工具!!!,

并且重启项目 electron 打开的 vuejs-devtool 依然还是在卡的界面,只能通过修改 .loadUrl() 加载一个普通简单或空白网页来重新打开 vuejs-devtool 插件
非常麻烦
好消息是 vuejs-devtool 已有稳定版,我们需要通过 installExtension 手动安装最新版 vuejs-devtool
electron-devtools-installer 官网也有说明
https://github.com/MarshallOfSound/electron-devtools-installer
----------------------------------------------------------------------------
插件帮我们做了以下步骤
源码就在项目的 src/downloadChromeExtension.ts 内
- 在 store.google.com 找到相应的插件
- 下载并解压 ctx 包放到本地路径
- electron识别出插件
----------------------------------------------------------------------------
下载 .crx 插件包解压后的路径是

还有
如果没有讲科学的上网,开发时打开 yarn electron:serve 启动 有可能会非常慢,通过源码我们会发现
这一句
downloadChromeExtension(chromeStoreID, forceDownload, attempts - 1)
如果失败会重复5次尝试下载,这是导致启动慢的原因。
一定要上网一定要讲科学
我们需要改的就是在 store.google.com 上找到插件 vuejs-devtool 对应的插件 id 如图地址栏红框内的就是 chrome 插件的 id

把 chrome 插件的 id 按以下方式传给 installExtension
installExtension({ id: 'nhdogjmejiglipccpnnnanhbledajbpd', electron: '>=1.2.1' })
完成,运行后插件会自动从下载并安装
成功运行 yarn electron:serve 的画面, 可以看到 vuejs-devtool 更新了出现了新的欢迎界面 ^_^

最后用 electron-devtools-installer 插件安装或更新其它开发插件如:React Developer Tools 也是也是照猫画虎,道理一样的
转载入注明博客园池中物 willian12345@126.com sheldon.wang
github: https://github.com/willian12345
electron 中如何安装或更新 vuejs-devtool 最新稳定版的更多相关文章
- Hadoop介绍及最新稳定版Hadoop 2.4.1下载地址及单节点安装
Hadoop介绍 Hadoop是一个能对大量数据进行分布式处理的软件框架.其基本的组成包括hdfs分布式文件系统和可以运行在hdfs文件系统上的MapReduce编程模型,以及基于hdfs和MapR ...
- Ubuntu 14.04 安装最新稳定版Nginx 1.6.0
如果已经安装,请先卸载sudo apt-get remove nginx最新的稳定版Nginx 1.6.0在ubuntuupdates ppa库中提供,网址http://www.ubuntuupdat ...
- 2020年ubuntu1804安装nginx最新稳定版1.16详细教程笔记
第一次使用nginx是2007年,当时主流还是apache.nginx横空出世,在web2.0的推动下,迅速崛起.眼下已是绝对的主流了. 当时,还有一个轻量级的lighttpd,是德国人写,刚开始还并 ...
- 【Linux】Centos7 安装redis最新稳定版及问题解决
------------------------------------------------------------------------------------------------- | ...
- nvm安装最新稳定版node
安装当前最新的稳定版. nvm install stable
- centos7安装最新稳定版nginx
开始安装 yum 安装 nginx yum安装nginx文档地址 # 一切以最新的文档页面为准--搜centos http://nginx.org/en/linux_packages.html yum ...
- Ubuntu中apt-get安装或更新软件错误的解决办法
$su #apt-get clean #cd /var/lib/apt #mv lists lists.back #mkdir -p lists/partial #apt-get clean #apt ...
- Ubuntu 16.04 安装最新稳定版Nginx 1.6.0
Ubuntu 16.04 默认安装的是nginx 1.14.0 #默认安装方式:apt-get install nginx 1.查看是否安装nginx,如果已经安装,请先卸载 #查看安装版本 d ...
- Linux(CentOS6.5)下编译安装Nginx官方最新稳定版(nginx-1.10.0)
注:此文已经更新为新版:http://comexchan.cnblogs.com/p/5815753.html ,请直接查看新版,谢谢! 本文地址http://comexchan.cnblogs.co ...
- linux下yum安装最新稳定版nginx
## 摘抄nginx官网文档 URL:http://nginx.org/en/linux_packages.html#stable To set up the yum repository for R ...
随机推荐
- Java - CodeForces - 1230A
题目: Dawid有了 4 包糖果.第 i 包里面有 Ai 个糖果. Dawid想把这四包糖果送给两个朋友,能否让两个朋友收到相同数量的糖果?注意,不能拆开任何一包糖,不能把糖果留给自己或扔掉,四包糖 ...
- vue 导出多页pdf, window.print()实现
如果你对分页打印没思路,而网上的现成方案又不适合,不妨进来看看,也许会对你有帮助. 由于工作环境是局域网,对于插件的安装有限制,所以排除了jspdf + html2canvas的实现方式:采用wind ...
- npm script 详解,tsc && electron . 直接编译后 运行,非常方便
最终平时只需要用这个方法就可以了: tsc && electron . ======================================================== ...
- NC24727 [USACO 2010 Feb G]Slowing down
题目链接 题目 题目描述 Every day each of Farmer John's N (1 <= N <= 100,000) cows conveniently numbered ...
- Linux学习资料锦集
Linux 学习资料链接: (1)Linux常见命令及其用法_STM32李逼的博客-CSDN博客 (2)Linux命令了解_STM32李逼的博客-CSDN博客 3)Linux使用编辑器_STM32李 ...
- 从零开始手写 redis(四)监听器的实现
前言 java从零手写实现redis(一)如何实现固定大小的缓存? java从零手写实现redis(三)redis expire 过期原理 java从零手写实现redis(三)内存数据如何重启不丢失? ...
- cmp命令
cmp命令 cmp命令用来比较两个文件是否有差异,当相互比较的两个文件完全一样时,则该指令不会输出任何信息,若发现有差异,预设会标示出第一个不同之处的字符和列数编号,若不指定任何文件名称或是所给予的文 ...
- win32 - 从dll中导出api并使用
从User32.dll中导出MessageBoxW 代码: #include <Windows.h> #include <iostream> #include <func ...
- OpenCV开发笔记(五十七):红胖子8分钟带你深入了解直方图反向投影(图文并茂+浅显易懂+程序源码)
若该文为原创文章,未经允许不得转载原博主博客地址:https://blog.csdn.net/qq21497936原博主博客导航:https://blog.csdn.net/qq21497936/ar ...
- Java面向对象之接口和抽象类的区别一目了然
介绍 相信对于Java面向对象部分,很多人很长一段时间对于接口和抽象类的区别,使用场景都不是很熟悉,同是作为抽象层重要的对象,工作中到底什么情况下使用抽象类,不是很清楚.本文就一次性把这些概念一次性说 ...