非常教程

Electron参考手册

调试器 | Debugger

调试器 | Debugger

Chrome远程调试协议的备用传输方式。

过程:主

Chrome开发者工具在JavaScript运行时有一个特殊的绑定,允许与页面进行交互并对它们进行测试。

const {BrowserWindow} = require('electron')
let win = new BrowserWindow()

try {
  win.webContents.debugger.attach('1.1')
} catch (err) {
  console.log('Debugger attach failed : ', err)
}

win.webContents.debugger.on('detach', (event, reason) => {
  console.log('Debugger detached due to : ', reason)
})

win.webContents.debugger.on('message', (event, method, params) => {
  if (method === 'Network.requestWillBeSent') {
    if (params.request.url === 'https://www.github.com') {
      win.webContents.debugger.detach()
    }
  }
})

win.webContents.debugger.sendCommand('Network.enable')

Instance Methods

debugger.attach([protocolVersion])

  • protocolVersion 字符串(可选) - 请求的调试协议版本。

将调试器附加到webContents

debugger.isAttached()

返回Boolean- 调试器是否附加到webContents

debugger.detach()

从调试器中分离出来webContents

debugger.sendCommand(method[, commandParams, callback])

  • method 字符串 - 方法名称应该是远程调试协议定义的方法之一。
  • commandParams 对象(可选) - 带请求参数的JSON对象。
  • callback 功能(可选) - 响应
    • error 对象 - 指示命令失败的错误消息。
    • result 任何 - 由远程调试协议中的命令描述的“返回”属性定义的响应。

将给定的命令发送到调试目标。

Instance Events

Event: ‘detach’

  • event Event
  • reason String - Reason for detaching debugger.

调试会话终止时发出。这种情况发生在webContents关闭或devtools被调用时webContents

Event: ‘message’

  • event 事件
  • method 字符串 - 方法名称。
  • params 对象 - 由远程调试协议中'参数'属性定义的事件参数。

每当调试目标问题检测仪器事件时发出。

调试器 | Debugger相关

Electron

Electron 是一个使用 JavaScript, HTML 和 CSS 等 Web 技术创建原生程序的框架,它负责比较难搞的部分,你只需把精力放在你的应用的核心上即可。

主页 https://electron.atom.io/
源码 https://github.com/electron/electron
发布版本 1.7.9

Electron目录

1.指南 | Guides
2.指南·开发 | Guides: Development
3.Webview 组件 |
4.加速器 | Accelerator
5.API
6.API·对象 | API·Objects
7.app
8.autoUpdater
9.浏览器总览 | BrowserView
10.浏览器窗口 | BrowserWindow
11.浏览器窗口代理 | BrowserWindowProxy)
12.ClientRequest
13.剪贴板 | clipboard
14.内容追踪 | contentTracing
15.小型文字档案 | Cookies
16.crashReporter
17.调试器 | Debugger
18.desktopCapturer
19.dialog
20.电子下载 | DownloadItem
21.环境变量 | Environment Variables
22.无框窗口 | Frameless Window
23.globalShortcut
24.IncomingMessage
25.ipcMain
26.IPC渲染器 | ipcRenderer
27.语言环境 | Locales
28.画面 | Menu
29.MenuItem
30.本地图像 | nativeImage
31.net
32.通知 | Notification
33.权限监控 | powerMonitor
34.权限存储拦截器 | powerSaveBlocker
35.处理 | process
36.协议 | protocol
37.远程 | remote
38.sandbox
39.屏幕 | screen
40.会话 | session
41.shell
42.系统表现 | systemPreferences
43.触摸板 | TouchBar
44.触摸板按钮 | TouchBarButton
45.触摸板颜色选择器 | TouchBarColorPicker
46.触摸板组 | TouchBarGroup
47.触摸板标签 | TouchBarLabel
48.触摸板弹出框 | TouchBarPopover
49.触摸板清理 | TouchBarScrubber
50.触摸板分段控制 | TouchBarSegmentedControl
51.触摸板滑块 | TouchBarSlider
52.触摸板间隔 | TouchBarSpacer
53.Tray
54.网页内容 | webContents
55.网页框架 | webFrame
56.网页要求 | WebRequest
57.窗口开启 | window.open