gpt4 book ai didi

reactjs - React Tic Tac Toe,Array.slice(),可变性

转载 作者:行者123 更新时间:2023-12-01 22:08:11 26 4
gpt4 key购买 nike

在 react 井字游戏中 tutorial ,为什么他们必须使用 Array.slice()?

handleClick(i) {
const squares = this.state.squares.slice();
squares[i] = 'X';
this.setState({squares: squares});
}

他们改变了 state.squares 对吗?试图了解发生了什么。

最佳答案

这是创建新数组并将所有元素复制到其中的常用方法。这是为了将 new 数组传递给 setState 而不是改变旧数组 - 这不会导致组件重新呈现。

新数组将导致重新渲染。如果你像这样改变了数组:

this.props.squares[i] = 'X';

react 不会收到状态发生变化的通知。

关于reactjs - React Tic Tac Toe,Array.slice(),可变性,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/50268752/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com