Я пытаюсь получить состояние от одного компонента, но почему-то не вижу никаких изменений, когда делаю setState (). Вот мое состояние:
class MyTestComponent extends React.Component {
constructor(props){
super(props);
this.state = {
check: 'String1'
}
this.testOtherFunction = this.testOtherFunction.bind(this);
}
Теперь вот сама функция:
testOtherFunction(){
this.setState({check: "String2"},
function(){
console.log(this.state.check, 'total'); // somewhy is not printed
});
return this.state.check;
}
А здесь, в другом компоненте, я вызываю эту функцию:
componentDidMount() {
console.log("test", MyTestComponent.testOtherFunction()) // returns String1
}
Почему он возвращает старое состояние из конструктора? И как я могу это исправить? Я знаю, что setState isyn c, но мне интересно, как выйти из подобных ситуаций.