我正在尝试在Angular 4中为jQuery Confirm创建一个指令。但是,我很难停止绑定的事件发生。这里是我的结构:Angular 4确认指令
menus.component.html:
<a (click)="delete(menu)" class="btn" confirm><i class="icon-trash"></i></a>
menus.component.ts:
delete(menu: Menu): void {
this.menuService.delete(menu.id)
.subscribe(
error => this.errorMessage = <any>error);
}
confirm.directive.ts:
import {Directive, ElementRef, Input} from '@angular/core';
@Directive({ selector: '[confirm]' })
export class ConfirmDirective {
constructor(el: ElementRef) {
$(el.nativeElement).on('click', function() {
$(this).confirm({
confirm: function() {
return true;
}
});
return false;
});
}
}
确认框确实出现,但事件在它之前被触发,所以它没用。我希望这个指令能够阻止一个事件的发生,如果这个动作被确认了就会触发它,否则就取消它。
为什么没用? –
因为无论我确认与否,事件总是被触发。 – yenerunver
OMG Angular 4发布了吗?什么在做:O:O角3在哪里? –