想象一下,作为redux状态的一部分,你有大量的项目。现在,每次添加/删除项目时,我都想进行一些API调用。目前我正在做这样的事情:
class Mixer extends React.Component{
componentWillReceiveProps(nextProps) {
// compare two massive arrays
// API call
}
render() {
//whaeva
}
}
MixerContainer = connect(
mapStateToProps,
mapDispatchToProps
)(Mixer)
比较两个大数组(nextProps vs current props),并在添加新项目或删除项目时进行API调用。这似乎效率很低,但有没有更好的方法来解决这个问题?
答案 0 :(得分:2)
你应该总是在行动中做这些事情。创建一个调用API调用的操作,在服务器返回成功后,更改客户端存储。这样,您可以防止客户端和服务器数据集不同的不必要情况。服务器应始终是您的真相来源。