手上正在开发的项目是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 内

  1. 在 store.google.com 找到相应的插件
  2. 下载并解压 ctx 包放到本地路径
  3. 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 最新稳定版的更多相关文章

  1. Hadoop介绍及最新稳定版Hadoop 2.4.1下载地址及单节点安装

     Hadoop介绍 Hadoop是一个能对大量数据进行分布式处理的软件框架.其基本的组成包括hdfs分布式文件系统和可以运行在hdfs文件系统上的MapReduce编程模型,以及基于hdfs和MapR ...

  2. Ubuntu 14.04 安装最新稳定版Nginx 1.6.0

    如果已经安装,请先卸载sudo apt-get remove nginx最新的稳定版Nginx 1.6.0在ubuntuupdates ppa库中提供,网址http://www.ubuntuupdat ...

  3. 2020年ubuntu1804安装nginx最新稳定版1.16详细教程笔记

    第一次使用nginx是2007年,当时主流还是apache.nginx横空出世,在web2.0的推动下,迅速崛起.眼下已是绝对的主流了. 当时,还有一个轻量级的lighttpd,是德国人写,刚开始还并 ...

  4. 【Linux】Centos7 安装redis最新稳定版及问题解决

    ------------------------------------------------------------------------------------------------- | ...

  5. nvm安装最新稳定版node

    安装当前最新的稳定版. nvm install stable

  6. centos7安装最新稳定版nginx

    开始安装 yum 安装 nginx yum安装nginx文档地址 # 一切以最新的文档页面为准--搜centos http://nginx.org/en/linux_packages.html yum ...

  7. Ubuntu中apt-get安装或更新软件错误的解决办法

    $su #apt-get clean #cd /var/lib/apt #mv lists lists.back #mkdir -p lists/partial #apt-get clean #apt ...

  8. Ubuntu 16.04 安装最新稳定版Nginx 1.6.0

    Ubuntu 16.04 默认安装的是nginx 1.14.0 #默认安装方式:apt-get  install nginx   1.查看是否安装nginx,如果已经安装,请先卸载 #查看安装版本 d ...

  9. Linux(CentOS6.5)下编译安装Nginx官方最新稳定版(nginx-1.10.0)

    注:此文已经更新为新版:http://comexchan.cnblogs.com/p/5815753.html ,请直接查看新版,谢谢! 本文地址http://comexchan.cnblogs.co ...

  10. linux下yum安装最新稳定版nginx

    ## 摘抄nginx官网文档 URL:http://nginx.org/en/linux_packages.html#stable To set up the yum repository for R ...

随机推荐

  1. 3、Web前端学习规划:CSS - 学习规划系列文章

    CSS作为Web前端开发的第2种重要的语言,笔者建议在学了HTML之后进行.CSS主要是对于HTML做一个渲染,其也带了一些语言语法函数,功能也非常强大. 1. 简介: CSS(层叠样式表)是一种用于 ...

  2. (C语言)我的第一个项目:命令行窗口下的学生成绩管理系统,及数据生成程序

    学生成绩管理系统 页面效果如图: 代码如下: #include <stdio.h> #include <stdlib.h> #include <string.h> ...

  3. Linux-crontab的使用

    一.什么是crontab?crontab 是有cron (crond) 这个系统服务来控制的,cron服务是linux的内置服务,类似于window下的计划任务,但它不会开机自动启动 二.如何使用?c ...

  4. IPFS的配置记录

    IPFS 分布式文件系统, 原理类似于bt, 通过文件分块, 每个块对应CID以及各级Hash做存储和校验, 通过DHT(Distributed Hash Table)做查找和路由. IPFS文档 h ...

  5. 【Unity3D】屏幕深度和法线纹理简介

    1 前言 ​ 1)深度纹理和法线纹理的含义 ​ 深度纹理本质是一张图片,图片中每个像素反应了屏幕中该像素位置对应的顶点 z 值相反数(观察坐标系),之所以用 "反应了" 而不是 & ...

  6. Nologging到底何时才能生效

    转了一篇EYGLE的文章 -------------------------------------------------- 最初的问题是这个帖子: http://www.itpub.net/sho ...

  7. oracle 使用comment语句添加表注释

    使用oracle comment语句可以给表.字段.视图等对象添加备注信息. 大致语法为: comment on TABLE table_name IS '备注内容'; 权限要求: 默认情况下用户只能 ...

  8. ubuntu 23.04 无法联网

    一些参考文章: 解决ubuntu突然无法联网问题 共享主机网络方法: https://www.server-world.info/en/note?os=Ubuntu_22.04&p=squid ...

  9. kafka学习笔记02-kafka消息存储

    kafka消息存储 broker.topic.partition kafka 的数据分布是一个 3 级结构,依次为 broker.topic.partition. 也可以理解为数据库的分库分表,然后还 ...

  10. 常用JDBC连接池

    如下整理常用JDBC连接池组件. HikariCP 针对不同的JDK需要引入对应的HikariCP,详见:Github项目地址 . 以JDK8为例子,在项目中引入如下依赖: <dependenc ...