Когда / где установить новое состояние в React - PullRequest
0 голосов
/ 29 мая 2018

В моем файле App.js я извлекаю необходимые данные и присваиваю значение различным состояниям хранилища.

constructor(props){
        super(props);
        this.props.fetchUser();
        this.props.fetchBeers();


    }

Теперь в дочернем компоненте я пытаюсь извлечь данные из хранилища.Но в соответствии с моим console.logs магазин утверждает, что мне нужно не сразу доступны.Чтобы увидеть данные, требуется около 4 console.logs.

Теперь я использую некоторые проверки перед установкой новых локальных состояний.Я попытался установить свои локальные состояния в функции DidMountComponent ().это не работает, bcz необходимые данные не доступны напрямую.Поэтому я установил функцию установки локальных состояний в моем Render ()

if(this.props.beers.beer.length>0 && this.state.beerArrayLoaded===false){
        this.setState({beerArrayLoaded:true});
        this.setState({BeerArray:this.props.beers.beer});

    }

Интересно, есть ли более правильный способ установить новое состояние после того, как данные из хранилища станут доступны?

...