Alle, Ich habe eine Angular2-Anwendung. In dieser Anwendung habe ich eine Schaltfläche, die einen Dialog öffnet. In diesem Dialog ist ein einzelnes div, auf das ich reagieren muss. Gibt es eine Möglichkeit, Code in einem Rückruf auszuführen, nachdem der Dialog und alle seine untergeordneten Objekte erstellt wurden?Angular2 Dialog Rückruf
Der nächstgelegene ich habe ist
<modal #openDialog (focusin)="openExplorer('someData')">
...
</modal>
Wenn ich mit diesem Ansatz gehen dann ist mein Code get rexecuted wenn ein Benutzer klickt auf die Formularfelder dieses div innen.
// HTML
<p (click)="openTheDialog(openDialog, 'thisDivRightHere')">Click here to open me, fool</p>
<modal #openDialog (focusin)="openExplorer('someData')">
<div id="thisDivRightHere"></div>
</modal>
// Component
openTheDialog(dlg, someDiv) void: {
this.fooBarService.preformTheAction(someDiv);
}
// Service
preformTheAction = function(someDiv) {
$('#' + someDiv).html(new Date());
}
Im obigen Beispiel, ohne (focusin), dann den Griff „thisDivRightHere“ Ich kann nicht
bekommen, aber wenn ich (focusin) Ich kann aber das Datum mit jedem Somethings interagierten ändert .
Ist 'modal' Komponente Ihre eigene Kreation? – silentsod
Nein Ich benutze ng2-modal – user316114
Was ist mit der Verwendung von (onOpen) falsch? Ich kenne die Details der Implementierung nicht, aber wenn es in ngAfterViewInit aufgerufen wird, dann wäre es gut zu gehen. – silentsod