React.js'de, bir zaman aşımı referansını bir örnek değişkeni (this.timeout) veya bir durum değişkeni (this.state.timeout) olarak saklamak daha mı iyidir?
React.createClass({
handleEnter: function () {
// Open a new one after a delay
var self = this;
this.timeout = setTimeout(function () {
self.openWidget();
}, DELAY);
},
handleLeave: function () {
// Clear the timeout for opening the widget
clearTimeout(this.timeout);
}
...
})
veya
React.createClass({
handleEnter: function () {
// Open a new one after a delay
var self = this;
this.state.timeout = setTimeout(function () {
self.openWidget();
}, DELAY);
},
handleLeave: function () {
// Clear the timeout for opening the widget
clearTimeout(this.state.timeout);
}
...
})
bu yaklaşımların her ikisi de işe yarar. Sadece birini diğerinin üzerine kullanmanın nedenlerini bilmek istiyorum.
this.timeout = setTimeout(this.openWidget, DELAY);
this.state
doğrudan arayarak olaraksetState()
mutasyon yerini alabilir sonradan yaptığınız davran.this.state
İletmenin sanki."