我有连接到 redux 存储的组件,它从道具获取数据:
const mapStateToProps = state => ({rowData: dataSelector(state)})
组件有自己的状态:
this.state = {
rowsPerPage: 23,
pageCount: 0,
}
我需要state.pageCount
在props.rowData
变化时计算新的。我该怎么做?
我有连接到 redux 存储的组件,它从道具获取数据:
const mapStateToProps = state => ({rowData: dataSelector(state)})
组件有自己的状态:
this.state = {
rowsPerPage: 23,
pageCount: 0,
}
我需要state.pageCount
在props.rowData
变化时计算新的。我该怎么做?
您可以使用if 条件getSnapshotBeforeUpdate
来确定更改的时间。props.rowData
根据值更改的时间,您可以state.pageCount
按照您想要的方式更新您的喜欢。
请创建组件WillReceiveProps
componentWillReceiveProps(newProps) {
if(newProps.rowData.length !== this.state.pageCount) {this.setState({pageCount: newProps.rowData.length})}
}