Electron app模块

前面的话

在Electron中主进程的app模块很重要,这里只列举一些常用的事件与方法:

const {app, BrowserWindow} = require('electron');

app模块是为了控制整个应用的生命周期设计的,可以通过app.on方法来监听Electron的整个生命周期中的事件。

常用事件
ready事件

初始化时被触发,通过app.on(‘ready’, function createwindow(){})来触发,一般用来初始化窗口。

app.on('ready', createWindow);
window-all-closed事件

当所有窗口都被关闭时触发。

这个时间仅在应用还没有退出时才能触发。 如果用户按下了 Cmd + Q, 或者开发者调用了 app.quit() ,Electron 将会先尝试关闭所有的窗口再触发 will-quit 事件, 在这种情况下 window-all-closed 不会被触发。

app.on('window-all-closed', () => {
  if (process.platform !== 'darwin') {
    app.quit()
  }
})
before-quit事件、will-quit事件、quit事件
  • before-quit: 在应用程序开始关闭它的窗口的时候被触发。
  • will-quit: 当所有的窗口已经被关闭,应用即将退出时被触发。
  • quit: 当应用程序正在退出时触发。

调用 event.preventDefault() 将会阻止终止应用程序的默认行为。

  • 当监听了window-all-closed之后,这三种事件监听就会失效。

  • 没有监听window-all-closed时,这三种事件的执行顺序,从他们的语义可以得知:before-quit–>will-quit–>quit

常用方法
app.quit()

试图关掉所有的窗口。before-quit 事件将会最先被触发。如果所有的窗口都被成功关闭了, will-quit 事件将会被触发,默认下应用将会被关闭。

app.isReady()

返回 Boolean 类型 - 如果 Electron 已经完成初始化,则返回 true, 其他情况为 false

更多app模块的事件与方法参考:Electron中文文档

  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值