【发布时间】:2020-08-18 06:00:20
【问题描述】:
我想在 Array.map 完成执行后运行一个异步函数。
我在函数 updateMaterials 的 map 方法中进行异步调用,我的目标是在 updateMaterials 完成执行后调用 addDataToDB。
功能 1:更新材料
const updateMaterials = recipeRawMaterials => {
recipeRawMaterials.map((item, index) => {
updateRawMaterialsDB(item._id, item.rate, index);
});
};
异步函数:updateRawMaterialsDB
const updateRawMaterialsDB = async (id, rate, index) => {
console.log(state.recipeRawMaterials);
const body = JSON.stringify({
rate
});
console.log(body);
const config = {
headers: {
'Content-Type': 'application/JSON'
}
};
const res = await axios.put(`/api/v1/rawMaterial/${id}`, body, config);
};
const addDataToDB = async (recipeName, recipeRawMaterials) => {
const config = {
headers: {
'Content-Type': 'application/JSON'
}
};
const res = await axios.post('/api/v1/basicRecipe', body, config);
setLoading();
};
【问题讨论】:
标签: javascript arrays async-await