Angular应用程序使用未定义的observable不会导致ExpressionChangedAfterItHasBeenCheckedError错误,但它看起来应该会?
创始人
2024-10-30 14:00:24
0

在Angular中,当某个observable的值发生更改时,Angular会运行变更检测器以更新视图。这时可能会遇到ExpressionChangedAfterItHasBeenCheckedError错误,因为更改还没有完全渲染到视图上。

然而,当使用undefinedobservable时,Angular不会运行变更检测器,因为未定义的observable并没有发出任何值。因此,即使值发生更改,Angular也不会更新视图,也不会出现ExpressionChangedAfterItHasBeenCheckedError错误。

以下是示例代码如何创建undefinedobservable和如何订阅它:

import { Component, OnInit } from '@angular/core';
import { Observable } from 'rxjs';

@Component({
  selector: 'app-my-component',
  template: `
    
{{ value$ | async }}
`, }) export class MyComponent implements OnInit { value$: Observable; ngOnInit() { // Create an undefined observable this.value$ = undefined; // Subscribe to the undefined observable this.value$.subscribe(console.log); // This will not cause ExpressionChangedAfterItHasBeenCheckedError } }

要避免这种情况,可以在创建observable时使用of方法来发出默认值。例如:

import { Component, OnInit } from '@angular/core';
import { Observable, of } from 'rxjs';

@Component({
  selector: 'app-my-component',
  template: `
    
{{ value$ | async }}
`, }) export class MyComponent implements OnInit { value$: Observable; ngOnInit() { // Create an observable with a default value this.value$ = of(''); // Subscribe to the observable this.value$.subscribe(console.log); // This will not cause ExpressionChangedAfterItHasBeenCheckedError } }

相关内容

热门资讯

六分钟了解!贰柒拾智能辅助柒!... 六分钟了解!贰柒拾智能辅助柒!都是真的有辅助攻略(真的有挂)-哔哩哔哩暗藏猫腻,小编详细说明贰柒拾智...
第四分钟了解!瑞安玉海楼茶苑辅... 第四分钟了解!瑞安玉海楼茶苑辅助器!果然存在有辅助教程(确实有挂)-哔哩哔哩1、首先打开瑞安玉海楼茶...
第1分钟了解!新鸿狐挂机!一直... 第1分钟了解!新鸿狐挂机!一直是真的有辅助神器(有挂存在)-哔哩哔哩1、游戏颠覆性的策略玩法,独创攻...
一分钟了解!三七互娱辅助器透视... 一分钟了解!三七互娱辅助器透视开挂!果然存在有辅助脚本(有挂教程)-哔哩哔哩一分钟了解!三七互娱辅助...
第一分钟了解!越乡游辅助!本来... 第一分钟了解!越乡游辅助!本来真的有辅助攻略(有挂细节)-哔哩哔哩1、下载好越乡游辅助正确养号方法之...
第八分钟了解!禅游游戏辅助脚本... 第八分钟了解!禅游游戏辅助脚本!总是有辅助app(有挂实锤)-哔哩哔哩一、禅游游戏辅助脚本游戏安装教...
五分钟了解!uupoker有透... 五分钟了解!uupoker有透视吗!好像一直总是有辅助插件(新版有挂)-哔哩哔哩一、uupoker有...
八分钟了解!新全游辅助器!其实... 八分钟了解!新全游辅助器!其实真的有辅助技巧(有挂技术)-哔哩哔哩1、每一步都需要思考,不同水平的挑...
6分钟了解!pokemmo手机... 6分钟了解!pokemmo手机版脚本免费!都是真的是有辅助软件(有挂猫腻)-哔哩哔哩1、进入到pok...
第五分钟了解!丫丫衡阳字牌辅助... 第五分钟了解!丫丫衡阳字牌辅助器!一直真的是有辅助脚本(确实有挂)-哔哩哔哩丫丫衡阳字牌辅助器脚本下...