Я пытаюсь обновить реагирующий дом, изменив наблюдаемую переменную mobx внутри обратного вызова fetch в приложении react typescript, но mobx не показывает никакой реакции на изменение переменной. Я определяю свою переменную следующим образом:
@observable data:any = []
и в моем конструкторе я меняю значение данных:
constructor(){
this.data.push(
{
count:0,
dateTime:'2017'
})
this.getData();
}
он работает нормально и обновляет dom должным образом, как и ожидалось. в методе getData()
я пишу выборку для получения данных с сервера:
@action getData(){
this.data.push(
{
count:1,
dateTime:'2018'
})
fetch(request).then(response=>response.json())
.then(action((data:Array<Object>)=>{
this.data.push(data)
console.log(data)
}));
}
поэтому мое представление теперь показывает 2 значения данных объекта 2017 и 2018 годов, но данные 2019 года, которые я получаю с сервера, не отображаются. журнал показывает правильные значения и переменную, заполненную правильным образом, но mobx не обновляет представление после того, как я установил любую переменную в обратном вызове функции выборки, и я не знаю, почему? p.s: я делаю то же самое в ECMA и проблем не было, но в typescript mobx действуют по-другому
@observer
? - person kingdaro   schedule 21.07.2018const data = [...this.data];
data.push(data);
this.data = data;
` - person Edward Chopuryan   schedule 27.07.2018