我班上有一个这样的函数
showMessageSuccess(){
var that = this;
this.messageSuccess = true;
setTimeout(function(){
that.messageSuccess = false;
},3000);
}
我怎样才能重写它,这样我就不用在“that”var中存储对“this”的引用了?如果我在setTimeout中使用“this”,那么messageSuccess bool似乎不会更改/得到更新。
您需要使用箭头函数()=>
ES6特性在settimeout
中保留this
上下文。
// var that = this; // no need of this line
this.messageSuccess = true;
setTimeout(()=>{ //<<<---using ()=> syntax
this.messageSuccess = false;
}, 3000);
在我的ServiceWorker中,我有以下代码: 如果单击主页中的按钮,则会向工作人员发送消息。这很好,我看到消息:和记录在控制台中。自身。setTimeout调用不会引发错误,但从不调用send_alert。 根据https://developer.mozilla.org/en-US/docs/Web/API/ServiceWorkerGlobalScope实现窗口计时器,它实现设置超时
我正在尝试返回在setTimout中计算的值。但好像我拿不出这个值。我读到要做到这一点,我必须用promise。我是否必须像下面这样使用它:https://italonascimento.github.io/application-a-timeout-to-your-promissions/?
我们如何在setTimeout中使用。我在构造函数中声明了一个属性。我使用了inside它会抛出一个类似于 我试了很多,但不知道如何解决这个问题。为什么错了?请帮我解决这个问题。。
我试图在EventEmitter上使用一些简单的操作符(来自FormModel.valueChanges),但我不知道应该如何实现。 EventEmitter类从Subject扩展而来
本文向大家介绍javascript中setTimeout使用指南,包括了javascript中setTimeout使用指南的使用技巧和注意事项,需要的朋友参考一下 javascript中setTimeout使用指南 以上所述就是本文的全部内容了,希望大家能够喜欢。