Có mã này trong tâm trí:
var Component = React.createClass({
getInitialState: function () {
return {position: 0};
},
componentDidMount: function () {
setTimeout(this.setState({position: 1}), 3000);
},
render: function () {
return (
<div className="component">
{this.state.position}
</div>
);
}
});
ReactDOM.render(
<Component />,
document.getElementById('main')
);
Không phải trạng thái sẽ thay đổi chỉ sau 3 giây sao? Nó thay đổi ngay lập tức.
Mục tiêu chính của tôi ở đây là thay đổi trạng thái 3 giây một lần (với setInterval()
), nhưng vì nó không hoạt động nên tôi đã thử setTimeout()
, điều này cũng không hoạt động. Có đèn nào trên này không? Cảm ơn!
foo()
ở đây chính xác là thực thi bar
sau thời gian chờ mong muốn. Hay tôi hoàn toàn sai và nó thực thi ngay lập tức, và chỉ trả lại giá trị sau thời gian mong muốn?
bar
, không gọi nó và chuyển giá trị trả về của nó. Bạn có mong đợi hành vi của foo(bar())
thay đổi, tùy thuộc vào những gì foo
đang làm không? Điều đó sẽ thực sự kỳ lạ.
foo(bar())
thìbar
được thực thi đầu tiên và giá trị trả về của nó được chuyển đếnfoo
.