Угловой 2 - использование этого "внутри" setTimeout
У меня есть такая функция в моем классе
showMessageSuccess(){
var that = this;
this.messageSuccess = true;
setTimeout(function(){
that.messageSuccess = false;
},3000);
}
Как я могу переписать это, поэтому мне не нужно хранить ссылку на "this" в "this" var? Если я использую "this" внутри setTimeout, messageSuccess bool, похоже, не изменяет/не обновляется.
Ответы
Ответ 1
Вам нужно использовать ArrowFunction ()=>
чтобы сохранить this
контекст в setTimeout
.
// var that = this; // no need of this line
this.messageSuccess = true;
setTimeout(()=>{ //<<<--- using ()=> syntax
this.messageSuccess = false;
}, 3000);