function checkItem(id) {
return new Promise((resolve) => {
fetch(`/items/${id}/`)
.then(response => response.json())
.then((response => {
if (response.item.active) {
alert('Item is activated, yeah!');
resolve(response.item);
else {
setTimeout(() => checkItem(id), 5000);
}
})
})
}
Алерт отрабатывает, но в месте где я вызываю функцию в первый раз ничего не возвращается. Как будто промис не ресолвится.
checkItem.then(item => console.log(item));
Почему так?
PS Работает все как надо если попадает в if, если else то после второго вызова checkItem уже не ресолвится