Électron - Comment savoir quand convertisseur fenêtre est prêt
Dans mon processus principal-je créer un convertisseur de fenêtre:
var mainWindow = new BrowserWindow({
height: 600,
width: 800,
x: 0,
y: 0,
frame: false,
resizable: true
});
mainWindow.openDevTools();
mainWindow.loadURL('file://' + __dirname + '/renderer/index.html');
Puis j'ai envie de communiquer avec elle en quelque sorte:
mainWindow.webContents.send('message', 'hello world');
Toutefois la fenêtre principale ne recevez pas ce message, car il n'est pas totalement fini d'être créé au moment où je tente de l'envoyer.
J'ai temporairement résolu ce problème en enveloppant le dernier code dans un setTimeout (), mais qui n'est certainement pas la bonne façon de résoudre un problème de concurrence.
Est là un rappel pour lorsque la fenêtre principale est prêt? J'ai essayé le "prêt-à-show" de l'événement mentionné dans les docs, mais il ne fonctionne pas.
OriginalL'auteur Joey | 2017-02-16
Vous devez vous connecter pour publier un commentaire.
Un listener sur "mainWindow" n'a pas fonctionné pour moi. J'ai utilisé à la place de "mainWindow.webContents".
OriginalL'auteur Besa
Ont un look à la
did-finish-load
événement mentionné dans la Electron navigateur de la fenêtre de la documentation.Il semble y avoir un
dom-ready
l'événement trop.OriginalL'auteur Michael
Vérifier: https://github.com/electron/electron/blob/master/docs/api/web-contents.md
Vous pouvez utiliser cet événement pour savoir si votre windows est prêt à vous main.js [CAS 1], mais si vous voulez savoir quand votre page est pleine chargée, vous devez ajouter un événement dans votre index.html [CAS 2] et puis vous pouvez attacher une fonction qui envoie un message à ses parents Main.js lui disant qu'il est prêt, à l'aide de IPCrenderer et IPCmain
CAS 1
main.js:
CAS 2
html:
Main.js:
OriginalL'auteur Juan Sánchez
ne sont pas mentionnés dans les réponses précédentes,
loadURL
retourne une promesse qui se résout en même temps le "fait-finition-charge" de l'événement est déclenché; c'est à dire, ils sont essentiellement équivalents, à l'exception de l'un est une promesse, et de l'autre un rappel.OriginalL'auteur junvar