P粉5534287802023-08-15 00:58:02
Your useEffect
will not run because users[index]
has the same value
Change it to index
let users = ['Oliver', 'Thomas', 'George', 'William'] export default function App() { const [index, setIndex] = useState(0); console.log('RENDER'); useEffect(() => { if (index === users.length - 1) { return } setTimeout(() => setIndex(index => index + 1), 2000) console.log('Hello ' + users[index]); console.log('Side Effect RUNS!'); }, [index]) // 更改为 `[index]` }