猿问

react和reudx ,我应该在哪初始化组件的数据?

我有个组件是通过state更新ui的,但是它的数据需要异步请求获取,我在哪去发送这个请求比较好?
reducer创建的时候?异步请求貌似不行吧
redux的容器层?(connect)如果放在这我如何在或获取数据后更新state?
组件的生命周期?
componentWillMount不行,它只执行一次,下次想更新没法
componentWillUpdate我当前做法是放在这,但是容易造成死循环
回首忆惘然
浏览 411回答 2
2回答

RISEBY

componentWillReceiveProps(nextProps){if(nextProps.someReducer!==this.props.someReducer){this.setState({a:reducer.a,},()=>{dispatch(someAction());});}}如果初始化时也需要的话,那么需要提供一个而外的函数,并且在componentDidMount和componentWillReceiveProps同时处理someLogicMethod(props){//todo}componentWillReceiveProps(nextProps){if(nextProps.someReducer!==this.props.someReducer){this.someLogicMethod(nextProps);}}componentDidMount(){this.someLogicMethod(this.props);}
随时随地看视频慕课网APP

相关分类

JavaScript
我要回答