遇到好几次了这个问题了,
每次数据setState是个引用Obj的话,reactjs不会比对太多细节,导致我们setState或者通过父组件props传递给子组件数据时不进行刷新,最快速的方法是先清空数据,然后再重新赋值即可
delete = (item) => () => {
this.props.cancleDialog()
var self = this;
//UI删除
var { data, dataObj } = this.state
data.splice(data.indexOf(item), 1)//删除列表数据
this.setState({
data: [] //清空
}, function () {
self.setState({ data });//重新赋值
});
delete dataObj[item.id]
//存储删除
this.props.deleteFile(item.id, item.path)
// this.getData(this.props);
}