如何通过 React 在 Electron Webview 中使用预加载脚本
preload 属性需要使用 file: 协议。 由于 electron 和 webpack 的工作方式,在 DOM 中使用 Renderer 进程中的 preload 属性是一场噩梦。 诀窍是从主进程开始。 在 src/main/main.ts 中: app.on('web-contents-created', (_event, contents) => { contents.on('will-
·
preload 属性需要使用 file: 协议。
由于 electron 和 webpack 的工作方式,在 DOM 中使用 Renderer 进程中的 preload 属性是一场噩梦。
诀窍是从主进程开始。
在 src/main/main.ts 中:
app.on('web-contents-created', (_event, contents) => {
contents.on('will-attach-webview', (_wawevent, webPreferences, _params) => {
webPreferences.preloadURL = `file://${__dirname}/webview-preload.js`;
});
});
进入全屏模式 退出全屏模式
在 src/main/webview-preload.js 中:
document.addEventListener(
'DOMContentLoaded',
() => {
// YOUR CODE HERE
},
false
);
进入全屏模式 退出全屏模式
如果本文对您有所帮助,请查看我们使用 Electron、React、TypeScript 和 Redux 构建的浏览器:https://github.com/danielfebrero/bonb-browser
更多推荐
已为社区贡献29255条内容
所有评论(0)