Проблема с функциями, не ожидающими заполнения переменной перед выполнением
Итак, я разрабатываю это приложение, и я не могу понять, как решить эту проблему, с которой я столкнулся,
проблема в том, что первая функция всегда выдает undefined в «console.log(params)», я предполагаю, что проблема в том, что «константный результат» не ждет обещания завершить заполнение всех данных перед передачей.
Что мне нужно, так это помощь в выяснении того, как заставить остальных ждать, пока результат не появится в поле, прежде чем двигаться дальше.
export async function registar_compra(compra){
const params = await create_params(compra)
console.log(params)
}
async function create_params(compra) {
const {numero_socio, nome_tuna, nome_completo, produtos_selecionados} = compra
const result = {
RequestItems: {
['HISTORICO']: produtos_selecionados.map(async (produto, index) => ({
PutRequest: {
Item: {
id: "compra",
data_dia: await get_data(index),
numero_socio: numero_socio,
nome_tuna: nome_tuna,
nome_completo: nome_completo,
quantidade: produto.quantidade,
nome_produto: produto.nome_produto,
preco_quantidade: produto.preço_quantidade
},
},
})),
},
}
return result
}
function get_data(index) {
return new Promise(resolve=> {
setTimeout(() => {
resolve(new Date().toISOString());
}, 12 * index);
});
}
Я тоже пытался отладить его, чтобы увидеть, в чем проблема, просто не могу найти способ заставить эту работу работать