今天小编给大家分享一下在Angular中怎么监听某个值的变化的相关知识点,内容详细,逻辑清晰,相信大部分人都还太了解这方面的知识,所以分享这篇文章给大家参考一下,希望大家阅读完这篇文章后有所收获,下面我们一起来了解一下吧。
Angular监听某个值的变化
使用getter
在
Angular
中可以用 getter
来监听某个值的变化,类似于 Vue
中的 watch
import { Component } from '@angular/core';
@Component({
selector: 'app-root',
templateUrl: './app.component.html',
styleUrls: ['./app.component.css']
})
export class AppComponent {
_inputVal;
set inputVal(val) {
this._inputVal = val;
this.inputChange();
};
get inputVal() {
return this._inputVal;
}
inputChange(val) {
console.log(val);
}
}
angular使用form表单监听数据
主要使用方法类 FormGroup,FormBuilder,Validators
引入主要使用方法类 FormGroup,FormBuilder,Validators
import {
Validators,
FormGroup,
FormBuilder
} from '@angular/forms';
赋值引入
validateForm: FormGroup;
constructor(private fb: FormBuilder,private ref: ChangeDetectorRef,private private) {}
创建表单+监听数据
data = {
name: [null, [Validators.required]], //Validators.required 表示验证(必填)
};
ngOnInit(): void {
this.validateForm = this.fb.group(this.data);
// 监听整个表单的变化
this.validateForm.valueChanges.subscribe(data => console.log('form', data));
// 单个control 变化
this.validateForm.get('name').valueChanges.subscribe(data => console.log('solo', data));
}