使用Electron的ipcRenderer
,是否可以向<webview>
元素发送消息?
我尝试过:
var webview = document.getElementsByTagName("webview")[0];
webview.send("test", "testing");
和
ipcRenderer.send("test", "testing");
,并尝试使用以下方法在webview
内接收它:
ipcRenderer.on("test", function(e) {
// do something with (e)
})
和
window.addEventListener("test", function() {
// do something with (e)
})
但是webview
并没有收到这些方法。
答案 0 :(得分:1)
根据electron webview documentation,您所拥有的东西似乎应该可以正常工作。
但是,在Webview文档的顶部,它确实有this warning,这可能会导致您当前正在测试的版本出现一些问题:
警告
Electron的webview标签基于Chromium的webview,该网站正在发生巨大的架构变化。这会影响Web视图的稳定性,包括渲染,导航和事件路由。目前,我们建议不要使用webview标记,而应考虑使用其他替代方案,例如iframe,Electron的BrowserView或完全避免嵌入内容的体系结构。
答案 1 :(得分:0)
An example of sending messages from the main process to the renderer process:
ipcRenderer.on("test", (event, message) => {
console.log(message)
})
为我工作。