zoukankan      html  css  js  c++  java
  • electron

    1. Electron是由Github开发,用HTML,CSS和JavaScript来构建跨平台桌面应用程序的一个开源库。
    2. Electron通过将ChromiumNode.js合并到同一个运行时环境中,并将其打包为Mac,Windows和Linux系统下的应用来实现这一目的。
    3. Electron热门产品  GitHub 的 Atom 和微软的 Visual Studio Code,这两款当下热门的编辑器都是使用Electron开发的。 而且对JavaScript的支持也都很棒。
    4. Electron只用了Chromium的渲染库而不是其全部组件。 这使得升级Chromium更加容易,但也意味着Electron缺少了Google Chrome里的一些浏览器相关的特性
    5. Electron同时在主进程和渲染进程中对Node.js 暴露了所有的接口
    6. Electron支持chrome开发者工具调试  win.webContents.openDevTools()

    使用vscode调试

    1.在 VSCode 中打开一个 Electron 项目。
    $ git clone git@github.com:electron/electron-quick-start.git
    $ code electron-quick-start
    Copy
    2.添加一个 .vscode/launch.json 文件并使用以下配置:
    {
      "version": "0.2.0",
      "configurations": [
        {
          "name": "Debug Main Process",
          "type": "node",
          "request": "launch",
          "cwd": "${workspaceRoot}",
          "runtimeExecutable": "${workspaceRoot}/node_modules/.bin/electron",
          "windows": {
            "runtimeExecutable": "${workspaceRoot}/node_modules/.bin/electron.cmd"
          },
          "args" : ["."]
        }
      ]
    }
    

      

    注册全局快捷键

    const {app, globalShortcut} = require('electron')
    
    app.on('ready', () => {
      // 注册一个 'CommandOrControl+X' 的全局快捷键
      const ret = globalShortcut.register('CommandOrControl+X', () => {
        console.log('CommandOrControl+X is pressed')
      })
    
      if (!ret) {
        console.log('registration failed')
      }
    
      // 检查快捷键是否注册成功
      console.log(globalShortcut.isRegistered('CommandOrControl+X'))
    })
    
    app.on('will-quit', () => {
      // 注销快捷键
      globalShortcut.unregister('CommandOrControl+X')
    
      // 清空所有快捷键
      globalShortcut.unregisterAll()
    })

    相关方法
     globalShortcut.register(accelerator, callback)

    有用的应用  https://electronjs.org/apps/mockman   模拟服务器  

    https://electronjs.org/apps/advanced-rest-client    模拟请求

    https://electronjs.org/apps/reversee

    https://electronjs.org/apps/ling

    https://electronjs.org/apps/hyper

    https://electronjs.org/apps/system-designer

    https://electronjs.org/apps/altair                 xxxxx

    神奇的remote

    https://imweb.io/topic/5b3b72ab4d378e703a4f4435                     remote

    常见错误

    1:渲染进程中引用不了nodejs

    var win = new BrowserWindow({ 600, height: 800, webPreferences: { nodeIntegration: true } })

  • 相关阅读:
    标题
    Ubuntu配置 PPTP 服务器端
    网络虚拟化问题小记
    DevStack部署Openstack环境
    Ubuntu LVM扩展LV
    Gnocchi+Aodh服务简析
    部署Ceilometer +Gnocchi + Aodh
    Runing MAC on KVM 问题小记
    处理 Ceilometer UPD 丢包
    TC limit bandwidth
  • 原文地址:https://www.cnblogs.com/honghong87/p/10156424.html
Copyright © 2011-2022 走看看