我有div类警报。
<div class="alert" *ngIf=alert>
<h1>Copied</h1>
</div>
我要显示此div 3秒钟。最初它是隐藏的,单击按钮后,我运行一个函数,然后将值更改为true,然后它变为可见。一切都在发生。但是,当我运行setTimeOut()函数时,三秒钟后,我想使div再次不可见,这是行不通的。
alert; //the value i am using to hide the div
//after clicking the function I am running the function
copying() {
this.clipboard.copy(this.currentCode);
this.alert = true;
setTimeout(function() {
this.alert = false;
// the alert value is being change to false but the div is not hiding.
}, 3000)
}
答案 0 :(得分:2)
像这样更改代码-
setTimeout(() => {
this.alert = false;
}, 3000);
这样做的原因是函数中this
的值取决于函数的调用方式。