Не могу получить promise response [дубликат]

177
06 апреля 2018, 17:59

На данный вопрос уже ответили:

  • $q.all не ждет пока все промисы не решаться 2 ответа

Хочу понять, как решить данную проблему. Суть в том, чтобы проверять дни по порядку на выходной-рабочий, пока в массиве не будет 3 рабочих дня, и возвращать последний. Проект на Angularjs 1.5, возможно, нужно писать как-то по-другому, используя $q, но я в этом пока новичок, поэтому буду благодарна за подсказку оптимального решения. Заранее большое спасибо

function  getFinePlanDateTo() { 
  let from = new Date(), workingDates = [] 
  let lastDay; 
  getResult(from, workingDates, lastDay).then((resp)=>{ 
    console.log("resp", resp) // здесь не та дата 
  }); 
} 
         
         
function getResult (from, workingDates, lastDay) { 
  from = new Date(from.setDate(from.getDate() + 1)); 
  return isWorkingDay(from).then(function (result) { 
    if (result && result.working) { 
      workingDates.push(from); 
      lastDay = workingDates[workingDates.length - 1]; 
    } 
    if (workingDates.length < 3) { 
      getResult(from, workingDates, lastDay); 
 
    } else { 
      console.log(lastDay) // здесь дата верная, ее надо вернуть 
      return lastDay 
    } 
    return lastDay 
 
  }) 
 
} 
 
 function isWorkingDay(day) { //сервис, который возвращает объект типа {working:true/false} 
   return service.workingDay(day).then(function (result) {  
    return result 
  }) 
 
}

Answer 1

Чтобы получить последний рабочий день по-идее надо переписать метод так

function getResult (day) {
    return isWorkingDay(day).then(function (result) {
        if (result && !result.working) {
            return new Date(day.setDate(day.getDate() - 1))
        } else {
            let newDay = new Date(day.setDate(day.getDate() + 1));
            return getResult(newDay);
        }
    }
}
READ ALSO
Access denied: no access to call this method. OpenAPI JS?

Access denied: no access to call this method. OpenAPI JS?

вылезает такая ошибка при запросе API метода, прочитал в документации, что, требуется access_tokenРебята кто-то сможет показать как примерно должен...

220
Ошибка с node js

Ошибка с node js

Ошибка в node js

176
Фейковый счетчик на PHP [требует правки]

Фейковый счетчик на PHP [требует правки]

Помогите пожалуйста с счетчикомСтоит задача такая

264
js присвоить значение

js присвоить значение

Есть функция которая выдаёт цвет имени для пользователя:

169