私のクラスにはこのような関数があります
showMessageSuccess(){
var that = this;
this.messageSuccess = true;
setTimeout(function(){
that.messageSuccess = false;
},3000);
}
'this' への参照を 'that' 変数に格納しなくても済むように、これを書き直すにはどうすればよいですか? setTimeout 内で 'this' を使用すると、messageSuccess bool は変更/更新されないようです。
ベストアンサー1
使用する必要がある矢印関数()=>
ES6保存する機能this
文脈内setTimeout
。
// var that = this; // no need of this line
this.messageSuccess = true;
setTimeout(()=>{ // <<<---using ()=> syntax
this.messageSuccess = false;
}, 3000);