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游戏安... 透视曝光!wepoker游戏安装教程(透视)拱趴大菠萝辅助神器,教程学习(有挂分享)-哔哩哔哩1、用...
wepoker透视脚本是什么!... wepoker透视脚本是什么!wepoker透视是真的吗(透视)教程-其实透视是有挂该软件可以轻松地...
透视教你!pokemomo辅助... 透视教你!pokemomo辅助软件(透视)hhpkoer辅助器,教程项目(竟然有挂)-哔哩哔哩pok...
wpk德州局怎么透视!wepo... wpk德州局怎么透视!wepoker国外版透视(透视)教程-切实必备真的有挂wpk德州局怎么透视辅助...
透视有挂!hhpoker视频巡... 透视有挂!hhpoker视频巡查真的假的(透视)hhpoker免费辅助器,教程攻略(有挂教学)-哔哩...
hhpoker开挂教程!wep... hhpoker开挂教程!wepoker透视苹果系统(透视)技巧-都是解谜是有挂1)wepoker透视...
透视解迷!hhpoker德州真... 透视解迷!hhpoker德州真的假的(透视)wepoker祈福有用吗,教程讲义(有挂透明挂)-哔哩哔...
德州局透视!菠萝辅助器免费版的... 德州局透视!菠萝辅助器免费版的特点(透视)app-好像了解真的有挂1、下载好菠萝辅助器免费版的特点透...
pokerrrr2辅助!wep... pokerrrr2辅助!wepoker有没有辅助(透视)插件-切实解谜真的有挂wepoker有没有辅...
透视曝光!pokemmo脚本辅... 透视曝光!pokemmo脚本辅助(透视)wepoker怎么设置透视,教程演示(发现有挂)-哔哩哔哩w...