Angular2:在表单构建器中订阅 valuechanges

Sol*_*orp 4 formbuilder angular2-forms angular

我将 ionic2 与 angular2 一起使用,并且我有一个使用 formbuilder 构建的表单,但我想检测某个输入的新变化。

ionViewDidLoad() {
  this.purchaseDataForm = this.formBuilder.group({
    kms: ['', Validators.required],
    lts: ['', Validators.required],
    price: ['', Validators.required],
    total: ['', Validators.required]
  });
}
Run Code Online (Sandbox Code Playgroud)

所以这是我的形式是如何得到证实,但我想认购的valuechanges价格LTS的投入,你知道该怎么做?

我正在尝试使用以下功能,但它显示 Cannot read property 'valueChanges' of undefined

 ngOnInit() {
  this.purchaseDataForm.price.valueChanges.subscribe(value => {
    console.log(value);
  });
}
Run Code Online (Sandbox Code Playgroud)

谢谢!

小智 6

价格不是表单的直接属性。价格位于表单的“控件”对象中。所以你的代码应该是这样的:

ngOnInit() {
    this.purchaseDataForm.controls.price.valueChanges.subscribe(value => {
        console.log(value);
    });
}
Run Code Online (Sandbox Code Playgroud)