Angular 使用服务更新组件值会产生ExpressionChangedTerithasBeenCheckedError

Angular 使用服务更新组件值会产生ExpressionChangedTerithasBeenCheckedError,angular,Angular,我一直在试图理解“流行”的表达方式,比如阅读其他类似stackoverflow的帖子和博客 但我仍然不知道如何解决我的问题 My appModule正在使用属性isSessionActive确定视图是否应显示导航链接 ngOnInit() { this.isSessionActiveSubscription = this.sessionservice.getSessionActiveSubject() .subscribe(isActive => this.isSessionA

我一直在试图理解“流行”的表达方式,比如阅读其他类似stackoverflow的帖子和博客

但我仍然不知道如何解决我的问题

My appModule正在使用属性isSessionActive确定视图是否应显示导航链接

ngOnInit() {
  this.isSessionActiveSubscription = this.sessionservice.getSessionActiveSubject()
    .subscribe(isActive => this.isSessionActive = isActive);
}
上述属性通过会话服务更新,但每次触发观察者时,我都会得到ExpressionChangedTerithasBeenCheckedError


有人能给我一个帮助,告诉我如何处理我的问题吗?

你能在stackblitz上创建一个演示吗?Hi@AngularInDepth.com,我在这里上传了一个非常简单的项目版本:要触发错误,只需登录然后注销。我想我已经找到了解决问题的方法,但我希望您能对我的实施提出意见。这就是您想要的吗你看过最新的演示吗?你找到解决方案了吗?很好:)我可能会在帖子中分享它?你能在stackblitz上创建一个演示吗?Hi@AngularInDepth.com,我在这里上传了一个非常简单的项目版本:要触发错误,只需登录然后注销。我想我已经找到了解决问题的方法,但我希望您能对我的实施提出意见。这就是您想要的吗你看过最新的演示吗?你找到解决办法了吗?太好了:)我可以在帖子里分享吗?