我想知道是否有任何方法来设置值并更新表单控件的有效性。鉴于以下内容:
this.updateForm = this._formBuilder.group({
user: ['',Validators.required]
});
我有一些关于更改触发器的指令,触发以下内容:
changeUserSelection(value){
this.updateForm.controls['user'].value = value // doesnt trigger validation?
}
我想知道如何设置值,并触发此字段的验证。按照我的方式做,不会触发验证。
由于
答案 0 :(得分:8)
根据angular2的最终版本updateValue
已更改为setValue
所以新语法应该是这样的
changeUserSelection(value){
this.updateForm.controls['user'].setValue(value);
}
答案 1 :(得分:4)
您应该使用(define replaceFirst( lambda (X Y L)
(cond
( (null? L) '() )
( (equal? (car L) X) (cons Y (cdr L)) )
( #t (cons (car L) (replaceFirst X Y (cdr L))) )
)
))
方法:
updateValue
答案 2 :(得分:2)
您也可以尝试patchValue
this.updateForm.patchValue({ user: value });
答案 3 :(得分:0)
您可以尝试this.form.updateValueAndValidity();
更新多个控件的值和验证。