Pourquoi useEffect ignore-t-il le dernier élément du tableau ?
P粉814160988
2023-08-14 18:21:42
<p>J'apprends React, en particulier useEffect. </p>
<p>Ce que je n'arrive pas à comprendre, c'est pourquoi useEffect ignore le dernier élément du tableau. </p>
<p>Quelqu'un peut-il expliquer pourquoi et comment résoudre ce problème ? </p>
<pre class="brush:php;toolbar:false;">laisser les utilisateurs = ['Oliver', 'Thomas', 'George', 'William']
exporter la fonction par défaut App() {
const [index, setIndex] = useState(0);
console.log('RENDER');
useEffect(() => {
if (index === users.length - 1) {
retour
}
setTimeout(() => setIndex(index => index + 1), 2000)
console.log('Bonjour' + utilisateurs[index]);
console.log('Side Effect RUNS!');
}, [utilisateurs[index]])
}</pré>
<p><br /></p>
La valeur de votre
useEffect
不会运行,因为users[index]
est la mêmeChangez-le en
index