JS Promises - 如何让 axios 调用等待?
JS Promises - how to make a axios call wait?
这是我想要完成的。
在我的应用程序中,我想检查之前是否加载了一些数据(来自应用程序其他地方的 API 调用)。如果没有,那么我想加载数据。但是,在确信我拥有数据之前,我不想在应用程序中进行任何进一步的操作。
所以伪代码看起来像这样。
if (!dataIsloaded) {
axios.get("/api/getData").then((data) => {
saveData(data);
dataIsLoaded=true;
});
}
// don't go any further until I'm assured I have the data
有人可以提供代码片段如何实现吗?谢谢!
您无需等待,只需运行您在数据到达后进行处理:
if (!dataIsloaded) { // First retrieve the data
axios.get("/api/getData").then((data) => {
saveData(data);
dataIsLoaded=true;
doSomethingWithTheData(data); // Finally use the data
});
}
else { // Directly use the data
doSomethingWithTheData(data);
}
...
function doSomethingWithTheData(data) {
...
}
这是我想要完成的。 在我的应用程序中,我想检查之前是否加载了一些数据(来自应用程序其他地方的 API 调用)。如果没有,那么我想加载数据。但是,在确信我拥有数据之前,我不想在应用程序中进行任何进一步的操作。
所以伪代码看起来像这样。
if (!dataIsloaded) {
axios.get("/api/getData").then((data) => {
saveData(data);
dataIsLoaded=true;
});
}
// don't go any further until I'm assured I have the data
有人可以提供代码片段如何实现吗?谢谢!
您无需等待,只需运行您在数据到达后进行处理:
if (!dataIsloaded) { // First retrieve the data
axios.get("/api/getData").then((data) => {
saveData(data);
dataIsLoaded=true;
doSomethingWithTheData(data); // Finally use the data
});
}
else { // Directly use the data
doSomethingWithTheData(data);
}
...
function doSomethingWithTheData(data) {
...
}