2016-01-20 41 views
6

在Angular 2(beta.0)中查看模板驅動窗體與模型驅動窗體的優缺點,我想知道如何將自定義驗證附加到簡單的文本輸入字段模板驅動的表單。沒有任何示例(需要除外)可用於此方法,或者我沒有找到它們。Angular 2中的模板驅動窗體

<form #f="ngForm"> 
    <label for="name">Name</label> 
    <input type="text" ngControl="name" [(ngModel)]="obj.name" #name="ngForm"> 
    <button type="button" (click)="save()">Save</button> 
</form> 

作爲一個例子驗證函數:

validate(control:Control):ValidationResult { 
    if (control.value === 'Monkey') { 
     return { invalidName: true } 
    } 
} 

上述驗證函數適用於使用在利用FormBuilder一個模型驅動形式。這怎麼可以使用模板驅動方法來完成?

答案如「這不可能,也不會在將來」。或者「這不是最佳實踐,請使用模型驅動方法。」再加上一個論點對我來說會比較好。 (我已經假設沒有辦法,但在網上找不到證據,我更喜歡模型驅動方法。)

+1

看看這有助於:http://blog.ng-book.com/the-ultimate-guide-to-forms-in -angular-2/ – Langley

+1

看看這裏... http://stackoverflow.com/q/34350049/5043867 –

+0

不幸的是,只有使用FormBuilder的例子。林想知道我是否可以附加一個驗證器,當我要隱式定義'ngControl =「name」? –

回答

相關問題