我有一个角度项目,在其中使用插值和数据绑定。 在整个项目中,只有一个组件无法正常工作。
我有一个名为 title 的简单变量,如果在 ngOnInit 方法中编写一些内容,该变量会正确显示在html中。
但是,如果以后再更改该变量的值,则不会更新html。
这是我的代码:
toLeave : boolean = undefined;
title = '';
ngOnInit() {
this.title = 'Review';
this.router.events.pipe(
filter((event: NavigationEnd) => event instanceof NavigationEnd)
).subscribe(res => {
if(this.toLeave != undefined)
return;
if(res.url.indexOf('toLeave') >= 0){
this.toLeave = true;
this.title = 'Review to leave';
}else{
this.toLeave = false;
this.title = 'Review received';
}
})
}
在我的HTML中:
<span>{{title}}</span>
我也尝试这样做:
<span [innerHTML]="title"></span>
最终结果是在html中显示“ Review”。 因此,未检测到订阅中完成的操作。
我尝试使用 ChangeDetectorRef 强制检测更改,但是当我调用 detectChanges 方法时,该对象已被破坏。
然后我使用 tick 方法尝试了 ApplicationRef ,但它没有任何改变。
有人可以帮我吗?
谢谢
答案 0 :(得分:0)
好的,我解决了这个问题。
有一件事我没有尝试做。
我从 ngOnInit 内部移动了代码,并在构造函数内部运行了代码。 现在一切正常