Javascript 在Electron 5+中获取窗口、文档和正文;远程浏览器窗口
目前,electron 5.0取消了将Javascript 在Electron 5+中获取窗口、文档和正文;远程浏览器窗口,javascript,reactjs,electron,Javascript,Reactjs,Electron,目前,electron 5.0取消了将nativeWindowOpen与节点集成一起使用的功能,因此无法在window.open返回的document.body上使用ReactDOM.createPortal。他们没有提出任何解决办法,我尝试了其他答案中的所有内容,比如: IPC将DOM节点返回到新的remote.BrowserWindow,它不会返回要附加到的有效DOM节点 webContents.executeJavascript,带有(function(){return window})
nativeWindowOpen
与节点集成一起使用的功能,因此无法在window.open
返回的document.body上使用ReactDOM.createPortal
。他们没有提出任何解决办法,我尝试了其他答案中的所有内容,比如:
- IPC将DOM节点返回到新的remote.BrowserWindow,它不会返回要附加到的有效DOM节点
webContents.executeJavascript
,带有(function(){return window})(
文档或正文,使进程挂起
我似乎无法使用BrowserWindow执行相同的操作:
// this is what works in Electron 4 with a warning see https://github.com/electron/electron/pull/15193
const container = window.open("about:blank", "someuniqueid"); // window = current main window
const stylesheet = document.createElement('link');
stylesheet.rel = 'stylesheet';
stylesheet.href = document.querySelector('link').href; // document = current main window
container.document.body.appendChild(stylesheet);
// [... edited for brevity]
return createPortal(
props.children(container), // children = render props, pass the window to the children
container.document.body
)
无法从创建的窗口返回有效的DOM节点<代码>要求('electron')
由于明显的原因也不起作用(节点集成始终处于禁用状态)