javascript - Finns det ett sätt att köra preload i Electron på ett nytt fönster öppnat från renderer
Jag arbetar på en Electron-app som kommer att vara ett omslag runt min webbaserade app. Jag vill ge mina användare möjlighet att utöka sin vy och genom att klicka på en knapp öppna ett nytt fönster. Fönstret öppnas från webben med window.open(...) och allt fungerar bra, det svarar bra på alla rörelser och andra parametrar. Mitt huvudfönster i Electron har en preload-fil som exponerar application i huvudvärlden (browser window) och som har sina egna fält som används av webben när den körs över Electron-applikationen. Jag har dock märkt att det nyskapade fönstret inte har window.application och att min preload-script inte har körts. Jag har gått igenom ett gäng GitHub PRs och issues och jag har läst (och provat saker från) Electron-dokumentationen, men jag kan inte få det att fungera. Finns det ett sätt att köra preload-scriptet i det nyskapade fönstret från renderer-processen?
Jag har försökt att lägga till
action: ActionType.Allow,
overrideBrowserWindowOptions: {
fullscreen: isFullscreenEnabled(details),
webPreferences: {
devTools: true,
nodeIntegration: true,
nodeIntegrationInSubFrames: true,
preload: '/absolute/path/to/preload.ts',
},
in i webContents.setWindowOpenHandler men det fungerade inte.
Jag har försökt med att sätta nodeIntegrationInSubFrames: true, i features-delen av window.open i renderer-anropet. Jag har också försökt samma sak med att köra new BrowserWindow(...) och nodeIntegrationInSubFrames: true, som en av webPreferences, men inget fungerade.