list数组是显示的数据,一般查找一次之后,只显示查找到的某个值,用setState的话,当前的list数组就只有前一次查找的数据了,想要第二次从原数组中又查询一个数据,应该怎么写。比如list=[1,2,3],不搜索的时候显示1,2,3;第一次搜索1,然后要让显示结果只有1,setState({list:[1])},想要再搜索2,就没有结果了
2 回答
慕勒3428872
TA贡献1848条经验 获得超6个赞
原数组数据和查找结果数据分开存放,原数组数据不变
this.state = { list: [] };this.data = originData;
波斯汪
TA贡献1811条经验 获得超4个赞
将搜索值和list值分开,list值保持不变
function List ({ list }) { const [filter, setFilter] = useState('') const resultList = list.filter(item => item.includes(filter)) return resultList.map(item => <li>{item}</li>) }
- 2 回答
- 0 关注
- 1079 浏览
添加回答
举报
0/150
提交
取消