electron封装接口有两种方式,都是在preload.js中进行编写注入预加载函数。第一种就是用传统的定义函数的方式。第二种是使用contextBridge。
第一种 define
window.something.dothing = function(arg) {
console.log(`do something in render. ${
arg}`)
return true; // 返回 true
};
第二种 contextBridge
// new way to defined global api
contextBridge.exposeInMainWorld(
"something", {
dothing: (arg) => console.log(`do something in render. ${
arg}`)
}
)
选择
本地页面,或者本项目内的系统优先使用第一种,开发方便,限制较少。
在线页面,优先选择第二种,隔离做的比较好,可以避免很多jquery无法引用的问题。