问题
Is there a way to reuse the window object? It may be necessary because the respective window may be generated dynamically.
var electron = require('electron');
var app = electron.app
var BrowserWindow = electron.BrowserWindow
app.on('ready', function(){
var win = new BrowserWindow();
win.loadURL 'file://' + __dirname + '/index.html';
// now i want use the window object in my BroserWindow win
window = win.getWindowObject; // like this
window.document.write(); // i can use window object here
});
回答1:
Still there isn't a way to directly access window object, however the method BrowserWindow.webContents.executeJavaScript allows to do it indirect:
let myWindow = new BrowserWindow(params);
myWindow.webContents.executeJavaScript('window.anyWantedProperty')
.then(result => console.log(result));
Be careful if you pass user input as this method allow code injection.
来源:https://stackoverflow.com/questions/41350911/how-can-i-get-a-window-object-from-new-browserwindow-in-electron