我有一个显示对象数组的react类组件。但是,当我渲染显示数据时,我得到了重复的数据。我该如何删除重复的数据呢?
Customer.js
this.state = {
customer:[
{ id: 1, createdAt: "2023-01-22T05:19:45.943Z" },
{ id: 1, createdAt: "2023-01-19T02:19:45.943Z" },
{ id: 2, createdAt: "2023-01-18T05:30:45.943Z" },
],
};
componentDidMount() {
axios
.get("http://localhost:4000/customer/show", {
responseType: "json"
})
.then(response => {
this.setState({ customer: response.data });
});
}
.....................................
render() {
return(
{
this.state.customer?.map((item) => {
return (
<div>
<div key={ item.id }> Time of Visit: {moment(item.createdAt).format('hh:mm A')}
</div>
</div>
);
})
})}
产出
访视时间:5:19 PM访视时间:下午2时19分
访视时间:下午5:30访视时间:下午5时30分
当我渲染对象数组时,我得到了重复的值。我怎样才能改变这个代码,使其只显示唯一的值呢?谢谢
2条答案
按热度按时间6vl6ewon1#
这是过滤掉重复值的最佳方法:
因此,对于您的代码,它应该是这样的:
vzgqcmou2#
您可以使用数组筛选器函数自定义输出。
我已经提取了过滤器函数,以明确您可以根据需要修改它。
有关详细信息,请查看以下链接: