electron preload 提前_electron vue3

2022-11-17 16:59:37 浏览数 (1)

大家好,又见面了,我是你们的朋友全栈君。

背景

最近手头的 electron 项目需要做一个报告导出的功能,导出时要弹出个页面,可让用户自行补全相应的字段。

由于公司已有现成的笔录工具,现直接将其集成进来,用 webview 直接展示其笔录页面,将已有的值传给笔录。

webview 简介

electronwebview 标签时基于 Chromium webview ,由于 Chromium 的架构变化巨大,会影响 electron webview 的稳定性,包括呈现、导航和事件路由。所以 electron 团队不建议使用 webview 标签。

注意:默认情况下,electron >= 5禁用 webview标签。 在构造 BrowserWindow 时,需要通过设置 webviewTag webPreferences选项来启用标签。

代码语言:javascript复制
var win = new BrowserWindow({ 
   
    height: 1040,
    width: 1920,
    backgroundColor: 'radial-gradient(#1b5083, #010204)',
    webPreferences: { 
   
      webviewTag: true
    }
  })

iframe 不同, webview 独立于您的应用程序运行。 它拥有和你的页面不一样的权限并且所嵌入的内容和你应用之间的交互都将是异步的。 这将保证你的应用对于嵌入的内容的安全性。 注意: 从宿主页上调用 webview 的方法大多数都需要对主进程进行同步调用。

preload

webviewpreload 属性只支持 file: 协议

代码语言:javascript复制
<webview src="https://www.github.com/" preload="file://E:/test/preload.js"></webview>

总结

webviewpreload 只支持 file 协议,打包成 asar 后,要注意和开发环境的相对位置关系。 但是不建议使用 webview,可以新建个窗口再放外部链接。

本篇属于 electron 初识,如有表述不当,望指出改正。

参考

1. electron文档 webview篇 2. electron webview加载远程preload方法

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 举报,一经查实,本站将立刻删除。

发布者:全栈程序员栈长,转载请注明出处:https://javaforall.cn/213476.html原文链接:https://javaforall.cn

0 人点赞