reactjs – 如何基于Redux状态更改生成React组件setState()?
发布时间:2020-12-15 05:03:35 所属栏目:百科 来源:网络整理
导读:我想我知道答案,但只是为了确保: 我希望React组件在Redux状态更改为某个条件时调用this.setState()(例如,state.dataLoaded === true).我应该以某种方式使用订阅,或者是太低级别我应该使用连接将状态映射到道具?在这种情况下,我认为这样的事情是可以接受的
我想我知道答案,但只是为了确保:
我希望React组件在Redux状态更改为某个条件时调用this.setState()(例如,state.dataLoaded === true).我应该以某种方式使用订阅,或者是太低级别我应该使用连接将状态映射到道具?在这种情况下,我认为这样的事情是可以接受的: componentWillReceiveProps(nextProps) { if (nextProps.dataLoaded) { this.setState({ dataSource: this.state.dataSource.cloneWithRows(nextProps.posts) }); } }
你肯定应该使用connect来做到这一点.当redux的状态发生变化时,将生成新的props并触发componentWillReceiveProps.
class MyComp extends React.Component { componentWillReceiveProps(nextProps) { if (nextProps.dataLoaded) { this.setState({ dataSource: this.state.dataSource.cloneWithRows(nextProps.posts) }) } } } export default connect( state => ({ dataLoaded: state.someStore.loaded }) )(MyComp) (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |
推荐文章
站长推荐
热点阅读