как получить данные из редукса в componentDIdMount? - PullRequest
0 голосов
/ 09 сентября 2018

В консоли ничего нет, где может быть ошибка? Нужно получить this.props.about и проверить пусто или нет.

reducer.js

 export default function details(state = initialState, action) {
  switch(action.type) {
    case DETAILS_SUCCESS:
  return { ...state, details: action.payload, error: '' };...

Container.js

class HeaderContainer extends Component {
  render() {
      const { details } = this.props, { deTails } = this.props.HeaderAction;
      return <div><Header deTails={deTails} about={details.details} error={details.error} /></div>
  }
}

function mapStateToProps(state) {
  return {
    details: state.details,
  }
}

function mapDispatchToProps(dispatch) {
  return {
    HeaderAction: bindActionCreators(HeaderAction, dispatch),
  }
}
export default connect(mapStateToProps, mapDispatchToProps)(HeaderContainer);

Component.js

componentDidMount() {
  console.log(this.props.about);
}

1 Ответ

0 голосов
/ 09 сентября 2018

Вы не получите обновленное состояние, как в реквизитах в componentDidMount, вместо этого вы можете использовать:


componentWillReceiveProps(nextProps){  // this is UN_SAFE 

}

или

 static getDerivedStateFromProps(nextProps, prevState) { // this is recommended
 }
...