Я пытаюсь настроить обещание, которое будет возвращать результат только после вызова ajax
Однако в моем коде результат возвращает null до завершения ajax, из журнала консоли я могу также убедитесь, что он возвращается до завершения функции checkuser.
Как я могу этого добиться, нужно ли мне делать тайм-аут l oop ждать, пока результат изменит значение на 0 или 1 и установить предел тайм-аута?
function checkUser() {
return new Promise((resolve, reject) => {
$.ajax({
type: "POST",
url: 'checkUserAvail.php',
data: {value: value},
success: function (data) {
resolve(data);
},
error: function (error)
{
reject(error);
}
})
})
}
checkUser()
.then((data) => {
console.log(data);
if (data == 1)
{
outcome= 1;
}
if (data == 0)
{
outcome= 0;
}
})
.catch((error) => {
alert("An error ocurred");
})
console.log(outcome);
return outcome;