小编典典

Angular 2 - 在setTimeout中使用'this'

all

我在课堂上有这样的功能

  showMessageSuccess(){

    var that = this;
    this.messageSuccess = true;

    setTimeout(function(){
      that.messageSuccess = false;
    },3000);

  }

我怎样才能重写这个,所以我不必在“那个”变量中存储对“这个”的引用?如果我在 setTimeout 中使用“this”,则 messageSuccess
bool 似乎不会更改/更新。


阅读 70

收藏
2022-08-19

共1个答案

小编典典

您需要使用 箭头函数()=> ES6功能 thissetTimeout.

// var that = this;                        // no need of this line
this.messageSuccess = true;

setTimeout(()=>{                           // <<<---using ()=> syntax
    this.messageSuccess = false;
}, 3000);
2022-08-19