在视图中,我处于这种情况:
<h3 *ngIf="show">{{users.result}}</h3>
在TypeScript逻辑中,我有:
show=false; <----as a property
以及以下功能:
timeOut(seconds: number, value:boolean) {
value = true;
setTimeout(
function() {
value = false;
}.bind(this),
seconds
);
}
但是当我打电话时,就像这样:
console.log(this.timeOut(3000, this.show));
“ this.show”属性未定义,但秒作为参数起作用了。我丢失了一些东西,我不知道该怎么办...有人可以帮忙吗?
答案 0 :(得分:3)
我看到的是
我的建议-只需将带有 arrow函数的 setTimeout 调用放入某些组件的方法中,例如 ngAfterViewInit 或在事件处理程序方法中:
ngAfterViewInit() {
setTimeout(() => this.show = true, 3000)
}
希望有帮助。