问题描述
这是一个非常基本的问题.在电子中,如何检查 BrowserWindow 的 url/文件名?
This is a pretty basic question. In electron, how do I check the url/filename of a BrowserWindow?
let win; app.on('ready', () => { win = new BrowserWindow(); win.loadFile(path.join(__dirname, 'public', 'main.html')); win.on('closed', () => { app.quit(); }) });
好吧,这么说,这是代码,说在不同的(添加:插入)浏览器窗口中发生某个事件后,我想从主浏览器窗口(win)获取 url.
Ok, so say, this is the code, say after a certain event happens in a different (add:insert) BrowserWindow, I want to get the url from the main BrowserWindow (win).
let addWin; ipcMain.on('createAddWin', ()=>{ addWin = new BrowserWindow(); addWin.loadFile(path.join(__dirname, 'public', 'add.html')); addWin.on('closed', () => { addWin = null }); ipcMain.on('add:insert', (e,insertObject) => { //some event happens //retrieve url from main window (win) }); });
我该怎么做呢,我宁愿不必向 win 发送事件,然后通过 ipcRenderer 发送 url,尽管这绝对是可能的.
How do I go about this, I prefer to not have to send an event to the win to then send the url through ipcRenderer, though this is definitely possible.
推荐答案
可以使用 getURL() 窗口的 webContents 实例方法> 实例属性:
Getting the window's URL is possible by using the getURL() instance method of the window's webContents instance property:
let currentURL = win.webContents.getURL();