javascript - 在 JavaScript 中第一个方法完成后运行方法
问题描述
在不使用 jQuery 或任何其他库(仅 vanilla js)的情况下,我想要在第一个方法完成后执行第二个方法(类)的最佳方法。
这是关于我正在创建的 react native expo 应用程序。我希望我的第二种方法在第一种方法之后立即执行
方法一
async load() {
try {
let mydata = await AsyncStorage.getItem("MyWeeklyTasks");
if (mydata !== null) {
this.state.products = JSON.parse(mydata);
data2 = JSON.parse(mydata);
} else {
this.state.products = [];
}
} catch (err) {
alert(err);
}
}
方法二
setDataForDay(whichDay) {
this.load();
this.state.whichDay = whichDay;
let filtered;
if (whichDay == "all") {
filtered = this.state.products;
// filtered = data2;
} else {
filtered = this.state.products.filter((obj) => {
return obj.day === whichDay;
});
}
this.state.products = filtered;
this.forceUpdateHandler();
}
这是我的构造函数
constructor(props) {
super(props);
this.load();
this.state = {
useThisId: "",
inputTitle: "",
inputDesc: "",
products: data2,
modalsetVisible: false,
dataModalSetVisible: false,
whichDay: "all",
color: "white",
};
this.contentForModal = {
content: "",
};
this.setDataForDay(this.state.whichDay);
this.forceUpdateHandler = this.forceUpdateHandler.bind(this);
alert("Click on the Day you wish to see");
}
除了构造函数之外,每当数据更新时,我也会调用 load。
解决方案
推荐阅读
- c++ - 为什么我在声明本身中收到“未在范围内声明”错误?
- python - 以印度逗号样式输出的 Pandas 数据框
- go - 如何为 2 种(或更多)类型的联合实现接口?
- angular - Angular mat-divider 不是已知元素
- flutter - Flutter:我将使用哪些小部件来创建这个屏幕?
- java - 我不能在 Cucumber Spring Boot 测试中通过两个步骤定义 @Spy 对象
- python - 根据列中的条件将 Pandas 数据帧拆分为多个数据帧
- javascript - 如何在前一个 div 滑出并隐藏后滑入一个 div,然后用新的 div 重复而不制作幻灯片?
- javascript - 我有一个固定的 div,我使用 jquery 在滚动时淡出。它工作正常,但如果我半途而废并引用 div 显示的页面
- azure - Terraform 模块输出无法解析其他模块中的输入变量