gpt4 book ai didi

javascript - 在 React 中提交表单时将对象添加到数组

转载 作者:行者123 更新时间:2023-12-02 21:14:50 25 4
gpt4 key购买 nike

我是 React 新手,当我提交表单时,我试图将对象逐个添加到状态数组中,但我只在数组中获得一个对象,这是一个代码片段:

我的状态

state = {
comments: [],
text: ""
};

处理表单提交

 handleSubmit = event => {
event.preventDefault();
const arr = [];
arr.push({ name: this.state.text, id: Math.random() });
this.setState({ comments: arr, text: "" });
};

渲染方法

<form onSubmit={this.handleSubmit}>
<input
type="text"
value={this.state.text}
onChange={e => this.setState({ text: e.target.value })}
/>
<ul>{this.renderComments()}</ul>
</form>

最佳答案

那是因为每次运行handleSubmit函数时,您都会创建新的空数组,将一条新评论插入其中,然后用它替换状态中的整个评论字段。要使其工作,只需从状态中读取注释数组中当前保存的内容并将其插入其中,而不是创建新的。

关于javascript - 在 React 中提交表单时将对象添加到数组,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/60998548/

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