如何正确地获取数据id使用React mobx lite?



我用MOBX写了一些代码!现在我有了一个输入字段,我取这个值并将这个字符串发送给API并获取数据!之后,我从商店获得数据,但当我在输入中输入新城市时,数据不会刷新!我想在输入中添加城市并立即显示天气数据!!!!

下面是我在CodeSandbox上的代码: https://codesandbox.io/s/practical-wood-p13yd?file=/src/Components/NewNoteInput.tsx

您需要在您的商店构造函数中添加makeObservable调用:

constructor() {
// this.weather = '';
this.weathers = [];
this.fetchingData = false;
makeObservable(this);
}

当我设置observable 时,mobx-react observer don't会触发同时,将API链接更改为https:const BASEURL = "https://api.openweathermap.org";

另外,分配API响应weathers是没有意义的,因为您的weathers属性是一个数组。你需要向它推送对象,就像这样:

runInAction(() => {
// That way every new weather response will be added to your array
this.weathers.push(weather);
this.fetchingData = false;
});

相关内容

  • 没有找到相关文章

最新更新