Ayant ce code à l'esprit:
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')
);
L'état n'est-il pas censé changer seulement après 3 secondes? Cela change immédiatement.
Mon objectif principal ici est de changer l'état toutes les 3 secondes (avec setInterval()
), mais comme cela ne fonctionnait pas, j'ai essayé setTimeout()
, ce qui ne fonctionne pas non plus. Des lumières à ce sujet? Merci!
foo()
ici est exactement à exécuter bar
après le délai d'expiration souhaité. Ou ai-je complètement tort et il s'exécute tout de suite, et ne renvoie la valeur qu'après l'heure souhaitée?
bar
, ne pas l'appeler et transmettre sa valeur de retour. Vous attendiez-vous à ce que le comportement de foo(bar())
change, en fonction defoo
se passe? Ce serait vraiment étrange.
foo(bar())
alorsbar
est exécuté en premier et sa valeur de retour est transmise àfoo
.