在Angular中怎么监听某个值的变化

作者:有用网 阅读量:225 发布时间:2023-11-08
关键字 Angular

今天小编给大家分享一下在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));
      }

    #发表评论
    提交评论