0
stopPropagation()應該阻止表單無效時觸發doSearch()
的回調。Angular 2無法阻止ngSubmit傳播
<form
[dirtyFieldsOnSubmit]="form"
(ngSubmit)="doSearch()"
#form="ngForm"></form>
指令代碼:
import {Directive, Input, HostListener} from '@angular/core';
import {NgForm} from '@angular/forms';
@Directive({ selector: '[dirtyFieldsOnSubmit]' })
export class DirtyFieldsOnSubmitDirective {
@Input('dirtyFieldsOnSubmit') form: NgForm;
constructor() {
}
@HostListener('submit', ['$event'])
onSubmit(event) {
if(!this.form.valid) {
for (var i in this.form.controls) {
this.form.controls[i].markAsDirty();
}
//event.stopPropagation() not working
}
}
constructor() {
}
}
onSubmit(){} //在移除事件後嘗試 – Manish
您能解釋一下好嗎? – Baconbeastnz