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() }); }); }); } }

相关内容

热门资讯

本来有辅助"微信小程... 微信小程序广东雀神智能插件是一款可以让一直输的玩家,快速成为一个“必胜”的ai辅助神器,有需要的用户...
本然有开挂"川娱竞技... 本然有开挂"川娱竞技血战辅助器"开挂(透视)辅助插件(解说技巧有挂存在)《详细加薇136704302...
原生有开挂"拱趴游戏... 原生有开挂"拱趴游戏插件"开挂(透视)辅助安装(AI教程有挂教程);打开点击测试直接进入微信(136...
素来有辅助"陕麻圈修... 素来有辅助"陕麻圈修改工具"开挂(透视)辅助下载(2026教程有挂方法) 了解更多开挂安装加(136...
原生有开挂"impo... 原生有开挂"impoker辅助"开挂(透视)辅助软件(科技教程有挂总结)>>您好:软件加136704...
本然有开挂"吉祥填大... 本然有开挂"吉祥填大坑机制原理"开挂(透视)辅助神器(详细教程有挂秘笈)这是一款可以让一直输的玩家,...
一向有辅助"拱趴大菠... >>您好:拱趴大菠萝辅助神器下载确实是有挂的,很多玩家在这款拱趴大菠萝辅助神器下载游戏中打牌都会发现...
最初有开挂"poke... 最初有开挂"pokemmo辅助脚本"开挂(透视)辅助透视(2026新版教程有挂攻略);无需打开直接搜...
起初有辅助"顺欣茶楼... 起初有辅助"顺欣茶楼智能辅助器"开挂(透视)辅助透视(必胜教程有挂攻略)这是一款可以让一直输的玩家,...
本来有开挂"嘟嘟十三... 嘟嘟十三张透视脚本 无需打开直接搜索微信:136704302本司针对手游进行,选择我们的四大理由: ...