Angular的FormControl导致无限循环。
创始人
2024-10-24 03:31:25
0

可能会出现这个问题的原因是在监听表单控件的值变化时,代码同时更改了表单控件的值,导致了无限循环。为了避免这个问题,可以将更改控制器值的代码放在Angular的zone之外,使其避开Angular的变更检测。

示例代码:

import { Component, NgZone } from '@angular/core';
import { FormGroup, FormControl } from '@angular/forms';

@Component({
  selector: 'my-app',
  template: `
    

Form value: {{ formGroup.value | json }}

`, }) export class AppComponent { formGroup = new FormGroup({ name: new FormControl('') }); constructor(private ngZone: NgZone) { this.formGroup.get('name').valueChanges.subscribe(name => { // This code will cause an infinite loop // this.formGroup.setValue({ name: name.toUpperCase() }); // Putting the code outside of Angular zone // will avoid the infinite loop this.ngZone.runOutsideAngular(() => { this.formGroup.setValue({ name: name.toUpperCase() }); }); }); } }

相关内容

热门资讯

开挂辅助!吉祥填大坑辅助器攻略... 开挂辅助!吉祥填大坑辅助器攻略,wepoker轻量版透视(透视)开挂辅助插件(真实有挂);1.吉祥填...
开挂辅助!哈局辅助器,佛手在线... 开挂辅助!哈局辅助器,佛手在线大菠萝为什么都输(透视)开挂辅助脚本(有挂辅助);哈局辅助器中的10万...
辅助开挂!hhpoker俱乐部... 辅助开挂!hhpoker俱乐部靠谱吗,拱趴大菠萝机器人(透视)开挂辅助工具(有挂细节);大家肯定在之...
开挂辅助!丽水都莱大菠萝辅助,... 开挂辅助!丽水都莱大菠萝辅助,wpk俱乐部辅助器(透视)开挂辅助安装(有挂辅助);是一款可以让一直输...
辅助开挂!多乐找刺激窍门,拱趴... 辅助开挂!多乐找刺激窍门,拱趴大菠萝辅助神器(透视)开挂辅助平台(有挂助手);是一款可以让一直输的玩...
辅助开挂!九天大厅挂价格,we... 辅助开挂!九天大厅挂价格,wepoker有没有辅助(透视)开挂辅助工具(有挂规律);九天大厅挂价格软...
开挂辅助!微信小程序开心泉州辅... 开挂辅助!微信小程序开心泉州辅助器,wepoker辅助器软件下载(透视)开挂辅助神器(有挂细节);微...
开挂辅助!打哈儿辅助,we-p... 开挂辅助!打哈儿辅助,we-poker正规吗(透视)开挂辅助插件(揭秘有挂);大家肯定在之前打哈儿辅...
开挂辅助!湖北逍遥辅助,wep... 开挂辅助!湖北逍遥辅助,wepoker私人局透视方法(透视)开挂辅助神器(发现有挂);1、这是跨平台...
辅助开挂!广西老友玩有破解,德... 辅助开挂!广西老友玩有破解,德普之星透视辅助软件(透视)开挂辅助软件(有挂工具);广西老友玩有破解软...