Es ändert den iFrame, der sich in einem DModal befindet, um die Sprache und den Inhalt des Codes aufzunehmen. Es sagt mir jedoch, dass iFramenull ist, sodass addEventListener nicht hinzugefügt werden konnte.
Ich habe Folgendes versucht:
Es sieht so aus, als ob Sie in gjs arbeiten, sodass Sie einfach Glimmer-Funktionen verwenden können, anstatt zu versuchen, DOM-Rendering und Race Conditions zu umgehen. Fügen Sie den Glimmer-{{on}}-Modifikator mit dem iframe-Element hinzu und lassen Sie Ihre on loaded-Funktion darauf auslösen.
Ah, ich habe mein Beispiel vermasselt. Es sollte {{on \"load\" this.onIframeLoaded}} lauten, ohne Klammern, da es sich um einen Verweis auf eine Funktion handeln sollte.
Hmm… es sagt Error: 74:13 error 'on' is not defined in ESLint. Und die Dokumentation erwähnt keinen Import, da es sich um einen Modifikator handelt.
Ich habe event als Parameter zu onIframeLoaded hinzugefügt, weil die Dokumentation das so gemacht hat.
Fügen Sie import { on } from \"@ember/modifier\"; hinzu und es sollte funktionieren.
Es ist eine gute Idee, sich den Discourse-Quellcode anzusehen. Es ist ein guter Ort, um mit vorhandenem Code zu lernen.