Javascript 阵列道具更新不正确时对子组件作出反应

Javascript 阵列道具更新不正确时对子组件作出反应,javascript,arrays,reactjs,typescript,setstate,Javascript,Arrays,Reactjs,Typescript,Setstate,我的react web应用程序使用Typescript 当使用setState在父组件中更新阵列时,阵列道具更新错误的子组件出现问题 子级在父组件渲染中声明如下(报警是子组件,filteredStatus是数组): 发生的情况是,更新后的表没有正确显示新的组件数组。新阵列似乎与旧阵列合并。我将数组的大小添加到子显示中,有时大小显示为0,而列表显示15个元素 我能够解决这个问题,首先将filteredStatus设置为空数组,然后按如下方式设置新数组: this.setState({filtere

我的react web应用程序使用Typescript

当使用setState在父组件中更新阵列时,阵列道具更新错误的子组件出现问题

子级在父组件渲染中声明如下(报警是子组件,filteredStatus是数组):

发生的情况是,更新后的表没有正确显示新的组件数组。新阵列似乎与旧阵列合并。我将数组的大小添加到子显示中,有时大小显示为0,而列表显示15个元素

我能够解决这个问题,首先将filteredStatus设置为空数组,然后按如下方式设置新数组:

this.setState({filteredStatus: this.localStatus});
const nullStatus = Array<Status>();
this.setState({filteredStatus: nullStatus});
this.setState({filteredStatus: this.localStatus});
const nullStatus=Array();
this.setState({filteredStatus:nullStatus});
this.setState({filteredStatus:this.localStatus});
我可能做错了什么,但这似乎是在子组件中呈现数组道具的问题。

表键

<TableRow key={status.location}>

正在根据状态位置进行更改。表键必须保持不变,渲染才能正常工作

const nullStatus = Array<Status>();
this.setState({filteredStatus: nullStatus});
this.setState({filteredStatus: this.localStatus});
<TableRow key={status.location}>