故事是,我应该能够将鲍勃,莎莉和杰克放进盒子里。我也可以从包装盒中取出。卸下后,将不留任何插槽。
people = ["Bob", "Sally", "Jack"] 我现在需要删除“ Bob”。新的数组将是:
["Sally", "Jack"] 这是我的react组件:
...
getInitialState: function() { return{ people: [], } },
selectPeople(e){ this.setState({people: this.state.people.concat([e.target.value])}) },
removePeople(e){ var array = this.state.people; var index = array.indexOf(e.target.value); // Let's say it's Bob. delete array[index]; },
... 在这里,我向您展示了最少的代码,因为它包含更多内容(onClick等)。关键部分是从数组中删除,删除,销毁“ Bob”,但removePeople()在调用时不起作用。有任何想法吗?我一直在看这个,但由于使用React,所以我可能做错了。 问题来源于stack overflow
要从数组中删除元素,只需执行以下操作:
array.splice(index, 1); 在您的情况下:
removePeople(e) { var array = [...this.state.people]; // make a separate copy of the array var index = array.indexOf(e.target.value) if (index !== -1) { array.splice(index, 1); this.setState({people: array}); } },
版权声明:本文内容由阿里云实名注册用户自发贡献,版权归原作者所有,阿里云开发者社区不拥有其著作权,亦不承担相应法律责任。具体规则请查看《阿里云开发者社区用户服务协议》和《阿里云开发者社区知识产权保护指引》。如果您发现本社区中有涉嫌抄袭的内容,填写侵权投诉表单进行举报,一经查实,本社区将立刻删除涉嫌侵权内容。