Maintenant, j'ai écrit une directive pour remplacer l'opération de clic. Après avoir cliqué, le bouton est désactivé. Par exemple, le clic est une méthode pour appeler la connexion et le bouton est restauré une fois la promesse du service de connexion terminée.
Vous pouvez maintenant simuler un clic et désactiver le bouton, mais vous ne pouvez pas obtenir le résultat promis. Existe-t-il une bonne méthode ?
//directive (大概的代码)
@Output() czClick = new EventEmitter();
@HostListener("click",["$event"])
onClick(e){
this.renderer.setElementAttribute(this.element.nativeElement,'disabled','true');
this.czClick.emit(e);
}
//html
<button cz-click (czClick)="login()">登录</button>
L'essentiel est this.czClick.emit(e); si le résultat promis de la connexion ne peut pas être obtenu ici, l'effet du bouton ne peut pas être modifié dans l'état final.
Demander conseil 0-0
(czClick)="login($event)"
n'est-ce pas ?