我在 React 组件的状态中有一个数组。我想使用 setState 更新数组的特定(在我的情况下是最顶层)元素。我怎样才能做到这一点?
问问题
776 次
2 回答
1
如果您需要解释,我会更新我的答案:)
class MyComponent extens React.Component {
state = {
myAwesomeArray: [1, 2, 3]
}
changeArray() {
var myAwesomeArray = [...this.state.myAwesomeArray]
myAwesomeArray[0] = -1
this.setState({ myAwesomeArray })
}
render() {
return (
<div>
{this.state.myAwesomeArray.map(el => <p key={p}>{el}</p>)}
<button onClick={this.changeArray}>Change my array!</button>
</div>
)
}
}
于 2018-05-05T12:29:36.520 回答
0
你可以这样做
const rawRequestData = this.state.data;
rawRequestData[index].key = "Custom key";
this.setState({ data: rawRequestData });
如果你想使用第三方库试试这个库,我使用了这个库的一些功能并得到了很好的结果。
于 2018-05-05T12:33:33.460 回答