- 45
- 0
vue代码中
<webview ref="printWebview" src="wv/printer.html" nodeintegration ></webview>
正常
<webview ref="printWebview" src="wv/printer.html" nodeintegration style="visibility: hidden;"></webview>
正常
<webview ref="printWebview" src="wv/printer.html" nodeintegration style="display:none;"></webview>
监听不到ipc-message
<div v-show="false">
<webview ref="printWebview" src="wv/printer.html" nodeintegration ></webview>
</div>
监听不到ipc-message
也就是说 当display:none 的时候 均监听不到 ipc-message, 但看到有些人说是可以的,不知道怎么回事
监听的代码
const webview = this.$refs.printWebview
webview.send('webview-print-render')
webview.addEventListener('ipc-message', (event) => {
console.log('get ipc message')
if (event.channel === 'webview-print-do') {
console.log('get!!', deviceName)
webview.print({
silent: true,
printBackground: true,
deviceName: deviceName
})
}
if (event.channel === 'hi2') {
console.log('get hi2')
}
}) - 共 0 条
- 全部回答
-
林景明 普通会员 1楼
在 Electron-Vue 中,Webview 是一个用于显示其他应用程序内容的组件。然而,由于它们是独立的进程,所以它们的通信是通过它们各自的 IpcChannels 或 IpcMuxers 实现的。如果你尝试在 Webview 中设置 display:none,但仍然无法监听到 IPC-message,那么问题可能出在 Webview 中。
- 清除所有未使用的 IPC channels 和 IpcMuxers
首先,你需要确保你已经清除了所有未使用的 IPC channels 和 IpcMuxers。这可以通过调用
window.webview.postMessage(null, null)来实现。这将向 Webview 发送一个空消息,表示你可以处理任何类型的消息。javascript window.webview.postMessage(null, null);- 尝试使用
onmessage事件监听器
在 Webview 中,你可以使用
onmessage事件监听器来处理任何类型的消息。但是,由于 Webview 是独立的进程,所以你不能直接监听到 IPC-message。javascript window.webview.addEventListener('message', function(event) { console.log('Received IPC message:', event.data); });- 使用 Webview 的内置事件处理器
你还可以尝试使用 Webview 的内置事件处理器来处理 IPC-message。在
window.webview.onmessage事件处理器中,你可以编写你的代码来处理任何类型的消息。javascript window.webview.onmessage = function(event) { console.log('Received IPC message:', event.data); };以上方法应该可以帮助你解决在 Electron-Vue 中 Webview 显示 none 但无法监听到 IPC-message 的问题。但是,如果你的问题仍然存在,那么你可能需要进一步检查你的代码,以确定问题的具体原因。
- 扫一扫访问手机版
回答动态

- 神奇的四哥:发布了悬赏问题阿里云幻兽帕鲁服务器更新之后。服务器里面有部分玩家要重新创建角色是怎么回事啊?预计能赚取 0积分收益

- 神奇的四哥:发布了悬赏问题函数计算不同地域的是不能用内网吧?预计能赚取 0积分收益

- 神奇的四哥:发布了悬赏问题ARMS可以创建多个应用嘛?预计能赚取 0积分收益

- 神奇的四哥:发布了悬赏问题在ARMS如何申请加入公测呀?预计能赚取 0积分收益

- 神奇的四哥:发布了悬赏问题前端小程序接入这个arms具体是如何接入监控的,这个init方法在哪里进行添加?预计能赚取 0积分收益

- 神奇的四哥:发布了悬赏问题阿里云幻兽帕鲁服务器刚到期,是不是就不能再导出存档了呢?预计能赚取 0积分收益

- 神奇的四哥:发布了悬赏问题阿里云幻兽帕鲁服务器的游戏版本不兼容 尝试更新怎么解决?预计能赚取 0积分收益

- 神奇的四哥:发布了悬赏问题阿里云幻兽帕鲁服务器服务器升级以后 就链接不上了,怎么办?预计能赚取 0积分收益

- 神奇的四哥:发布了悬赏问题阿里云幻兽帕鲁服务器转移以后服务器进不去了,怎么解决?预计能赚取 0积分收益

- 神奇的四哥:发布了悬赏问题阿里云幻兽帕鲁服务器修改参数后游戏进入不了,是什么情况?预计能赚取 0积分收益
- 回到顶部
- 回到顶部
