Comment utiliser le <webview> méthodes d'Électrons
Sur l'Électron <webview>
la documentation il y a une liste de méthodes que vous pouvez utiliser avec l'objet. Lorsque j'essaie d'exécuter l'une quelconque des méthodes, aucune de ces travaux. Quand j'ai regardé dans inpect les propriétés de la <webview>
élément dans l'inspecteur, il est dit que son prototype est webview
. (__proto__ : webview
)
C'est dans ce prototype, où tous les moyens sont stockées. Donc, mon élément fondamentalement, il suffit d'hériter de ces méthodes à partir de son prototype lorsque j'utilise ces méthodes (par exemple,myWebview.openDevTools()
).
Cependant! lorsque j'utilise Object.getProptotypeOf(myWebview)
- je obtenir HTMLElement
, PAS webview
comme il le montre dans l'inspecteur.
Voici un exemple de mon code:
<webview id="myWebview" src="path/to.file"></webview>
<script>
var myWebview = document.getElementById('myWebview');
console.log("myWebview: ",myWebview);
console.log("prototype: ",Object.getPrototypeOf(myWebview)); //=> HTMLElement
myWebview.openDevTools();
</script>
OriginalL'auteur Sam Eaton | 2015-06-10
Vous devez vous connecter pour publier un commentaire.
J'ai découvert le problème et a ajouté un exemple de la D'Électrons De La Documentation
La ligne de fond est que vous devez ajouter un écouteur à la webview qui écoute lors de la webview élément est prêt:
Selon @Shwany, la webview méthodes seront disponibles lorsque les
did-start-loading
événement est déclenché, cependant, il peut être préférable d'attendre jusqu'à ce que la webview élément est complètement prêt à l'aide dedom-ready
Pour une explication plus détaillée:
Lorsque la fenêtre est d'abord rendu dans les DOM, la webview méthodes ne sont pas disponibles. Initialement, le prototype de la
<webview>
élément est toujours le génériqueHTMLElement
.Comme après la page s'affiche que le
<webview>
élément commence à charger puis son prototype est changé à la webview prototype (même nom que l'élément). Et quand il gagne l'accès à la webview prototype, il accède à l'ensemble de la webview prototype méthodes.OriginalL'auteur Sam Eaton
La documentation de la webview dit:
Incrustation de cette idée, j'ai été en mesure d'appeler openDevTools sur la webview en utilisant le code suivant:
Je devine que les méthodes ne sont pas appliquées à la webview. J'ai essayé d'accéder à ce document.readystate == "complète", mais ils n'étaient pas encore disponibles. Espérons que la liaison à l'événement ci-dessus, vous obtiendrez la fonctionnalité dont vous avez besoin.
Excuse mon newbie ignorance, mais le
<script>
tags faire ressembler à ceci être dans le.html
fichier. Peut-il pas être dans le.js
fichier, et si oui, où?Il peut être incorporé dans les balises de script, comme dans mon exemple, ou inclus dans un .fichier js qui est ensuite référencé par l'attribut src sur une balise de script. C'est-à-dire, ce peut vivre où JavasSript peut vivre dans une page web. Laissez-moi savoir si cela aide, ou si je peux préciser plus avant.
OriginalL'auteur Shawn Rakowski