设置如下:

var webview = document.createElement('webview');
// 在所有iframe内加载preload
webview.nodeintegrationinsubframes =  true;
// 在webview内禁用node集成
webview.nodeintegration =  false;

设置完成后如果不生效,需要去在主进程检查BrowserWindow的webPreferences.nodeIntegrationInSubFrames设置,如果webview所在的渲染进程本身nodeintegrationinsubframes为false,是没办法给webview下发权限的,nodeintegration同理

经验证preload和某些博客描述不太一致,preload是会在webview每次reload都会运行的,并不是只在第一次加载时运行


坚壳
4 声望3 粉丝