• 设为首页
  • 点击收藏
  • 手机版
    手机扫一扫访问
    迪恩网络手机版
  • 关注官方公众号
    微信扫一扫关注
    公众号

Electron DevTools扩展

原作者: [db:作者] 来自: [db:来源] 收藏 邀请

为了使调试更容易,Electron 原生支持 Chrome DevTools Extension

对于大多数DevTools的扩展,你可以直接下载源码,然后通过 BrowserWindow.addDevToolsExtension API 加载它们。Electron会记住已经加载了哪些扩展,所以你不需要每次创建一个新window时都调用 BrowserWindow.addDevToolsExtension API。

注:React DevTools目前不能直接工作,详情留意 https://github.com/electron/electron/issues/915

例如,要用React DevTools Extension,你得先下载他的源码:

$ cd /some-directory
$ git clone --recursive https://github.com/facebook/react-devtools.git

参考 react-devtools/shells/chrome/Readme.md 来编译这个扩展源码。

然后你就可以在任意页面的 DevTools 里加载 React DevTools 了,通过控制台输入如下命令加载扩展:

const BrowserWindow = require('electron').remote.BrowserWindow;
BrowserWindow.addDevToolsExtension('/some-directory/react-devtools/shells/chrome');

要卸载扩展,可以调用 BrowserWindow.removeDevToolsExtension API (扩展名作为参数传入),该扩展在下次打开DevTools时就不会加载了:

BrowserWindow.removeDevToolsExtension('React Developer Tools');

DevTools 扩展的格式

理论上,Electron 可以加载所有为 chrome 浏览器编写的 DevTools 扩展,但它们必须存放在文件夹里。那些以 crx 形式发布的扩展是不能被加载的,除非你把它们解压到一个文件夹里。

后台运行(background pages)

Electron 目前并不支持 chrome 扩展里的后台运行(background pages)功能,所以那些依赖此特性的 DevTools 扩展在 Electron 里可能无法正常工作。

chrome.* APIs

有些 chrome 扩展使用了 chrome.*APIs,而且这些扩展在 Electron 中需要额外实现一些代码才能使用,所以并不是所有的这类扩展都已经在 Electron 中实现完毕了。

考虑到并非所有的 chrome.*APIs 都实现完毕,如果 DevTools 正在使用除了 chrome.devtools.* 之外的其它 APIs,这个扩展很可能无法正常工作。你可以通过报告这个扩展的异常信息,这样做方便我们对该扩展的支持。

鲜花

握手

雷人

路过

鸡蛋
该文章已有0人参与评论

请发表评论

全部评论

专题导读
上一篇:
Electron 使用 Pepper Flash 插件发布时间:2022-02-03
下一篇:
Electron 使用 Selenium 和 WebDriver发布时间:2022-02-03
热门推荐
热门话题
阅读排行榜

扫描微信二维码

查看手机版网站

随时了解更新最新资讯

139-2527-9053

在线客服(服务时间 9:00~18:00)

在线QQ客服
地址:深圳市南山区西丽大学城创智工业园
电邮:jeky_zhao#qq.com
移动电话:139-2527-9053

Powered by 互联科技 X3.4© 2001-2213 极客世界.|Sitemap