1. Electron开发
electron 集成了chrome内核和nodejs ;跨平台 ;
主进程:一个应用只有一个主进程,只有主进程可以和GPU的API交互 ;
渲染进程:展示页面,一个应用可以有多个渲染进程 ;
electron 环境搭建 :nodejs
const { app, BrowserWindow } = require('electron') // CommoonJS // 创建窗口 createWindow 函数 const createWindow = () => { const win = new BrowserWindow({ width: 800, height: 600 }) console.log('ready',111111111111111111); // 把 index.html 加载到 win 实列 win.loadFile('index.html') // 指定显示内容 // 生命周期 一共有 8 个 // 可以控制DOM元素 加载dom结束之后 win.webContents.on('did-finish-load',() => { console.log('333333333333333333---'); }) win.webContents.on('dom-ready',() => { console.log('22222222222222---'); }) win.on("close",() => { console.log("88888----this window is closed") win = null // 内存机制垃圾回收 }) } // 调用函数 app.on("ready",createWindow) // PS:window-all-closed 和 before-quit will-quit quit app.on('window-all-closed',() => { console.log('444444--所有的窗口关闭') // 如果app不执行quit方法 before-quit will-quit quit 三个生命周期就不能监听到 app.quit() }) app.on('before-quit',() => { console.log('5555--应用退出之前') }) app.on('will-quit',() => { console.log('66666--将要退出前') }) app.on('quit',() => { console.log('77777--退出之后') }) // ps:窗口有 3 个生命周期 app 有 5 个生命周期