[英]push element from one array to another on button click in React?
我正在尝试使用 method.contact() 将我的 old_array 中的元素推送到我的 new_array。 我在数组中的每个元素上都有一个按钮,如下所示:
'''
<li key={i}>
{{character.name} + "is" + {character.age} + "years old"}
<button onClick={this.addToNewArray}>Fav</button>
</li>
'''
所以你可以看到每个元素都有一个单独的 id。 现在我想单击按钮将该元素推送到新数组。 (我从 API 获取 i.map() 到我的 old_array 的数据)我的 function 看起来像这样:
'''
constructor(props){
super(props);
this.state = {
old_arary: [],
new_array: []
}
}
addToNewArray = () => {
let new_array = this.state.new_array.contact(this.state.old_array);
this.setState({ new_array: new_array})
}
'''
这就是我想要我的 output 的地方:
'''
<li>
{this.state.new_array}
</li>
'''
第一的:
在您的问题中,您到处都在使用contact()
,我认为JS中的数组没有这样的function :),应该是concat()
第二:
您可以将 ES6 用于较低的代码,如下所示:
let new_array = [...this.state.new_array , ...this.state.old_array];
this.setState({ new_array });
第三:
改变这个
<li>
{this.state.new_array}
</li>
至:
{
this.state.new_array.map((obj,index) => (
<li key={index}>
{obj.name}
</li>
))
}
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.