Wenn ich eine einfache Schaltfläche mit einem Click-Handler und einem benutzerdefinierten-Attribute Richtlinie wie folgt:Richtlinie Ausführungsreihenfolge in Winkeln 2
<button (click)="save()" attributedirective="project saved">Save</button>
Und in meinem Attribut Direktive Ich bin mit dem hostlistener Dekorateur dem zuhören click event:
@Directive({
selector: `[attributedirective]`
})
export class AuditPusher {
@Input('attributedirective') attributedirective: string = 'Missing message!';
@HostListener('click', ['$event'])
pushAudit() {
console.log('text:'+this.attributedirective.toString());
}
}
Welcher Code wird zuerst ausgelöst? Das save() für das click-Ereignis oder den Code in meiner attribute-Direktive? - Und: Stellen Sie sich vor, Sie hätten zwei Attribut-Direktiven. Wer von denen wird zuerst feuern? In Angular 1 gab es so etwas wie Richtlinienprioritäten, wie wird das in Angular 2 gemacht? Ich finde es schwierig, diesbezüglich eine Dokumentation zu finden.
check out ApplicationRef.tick() statt setTimeout (0) –
Yup das könnte auch funktionieren. Ich bin schon mal darauf gestoßen, habe es aber nicht am Ende benutzt, ich werde es beim nächsten Mal versuchen, danke! – Boris