Electron 创建多个窗口
我正在使用Github Electron和Angular 1.x构建一个桌面应用程序。我需要首先创建一个登录窗口,一旦登录成功,我想显示/实例化主/实际应用程序窗口Electron 创建多个窗口,electron,Electron,我正在使用Github Electron和Angular 1.x构建一个桌面应用程序。我需要首先创建一个登录窗口,一旦登录成功,我想显示/实例化主/实际应用程序窗口 我们如何销毁当前的Electron窗口实例并从AngularJS JavaScript控制器创建一个新的窗口实例?我的第一个建议是不要有多个窗口,而是有多个路由。要在angular 1.x中执行布线,请签出 使用路由,您将使用同一窗口并更改在该窗口内运行的应用程序的状态 但是,您也可以通过简单地创建多个BrowserWindow对象
我们如何销毁当前的Electron窗口实例并从AngularJS JavaScript控制器创建一个新的窗口实例?我的第一个建议是不要有多个窗口,而是有多个路由。要在angular 1.x中执行布线,请签出 使用路由,您将使用同一窗口并更改在该窗口内运行的应用程序的状态 但是,您也可以通过简单地创建多个
BrowserWindow
对象或在同一窗口上多次调用loadURL
来拥有多个窗口
登录完成后,您可以使用模块与主进程通信,以触发所需的行为
// main.js (main process)
const {app, BrowserWindow, ipcMain} = require('electron')
app.on('activate', () => {
var win = new BrowserWindow()
win.loadURL(`file://${__dirname}/login.html`)
ipcMain.on('login-success', () => {
win.loadURL(`file://${__dirname}/index.html`)
})
})
然后,在渲染过程中,只需发送登录成功
消息
// login.js (render process)
var {ipcRenderer} = require('electron')
ipcRenderer.send('login-success') // call this after the user logs in