Задать вопрос
@Leopandro
Разработчик CRM/ERP систем

Почему callback функции не триггерят срабатывания ngClass в angular 5?

Вот эта функция прокладывает маршрут в google maps:
calculateAndDisplayRoute(callback = null) {
    var waypts = [];
    this.directionsService.route({
      origin: "Аэропорт, Республика Башкортостан, Россия",
      destination: $('#address_to').val(),
      waypoints: waypts,
      optimizeWaypoints: true,
      travelMode: 'DRIVING'
    }, (response, status) => {
        if (status === 'OK') {
          this.setLengthByResponse(response);
          this.marker.setMap(null);
          this.directionsDisplay.setDirections(response);
          callback ? callback(true) : null;
        } else {
          callback ? callback(false) : null;
        }
    });

Эта функция ее вызывает:
this.calculateAndDisplayRoute((result) => {
        console.log(result);
        if (result) {
          $("#terminal-steps").steps("next");
        }
        else {
          this.errors['address'] = ['Уточните адрес или выберите адрес из списка'];
        }
      });

Как видите если не удалось проложить маршрут к адресу, добавляется сообщение об ошибке.
Далее ngClass-у присваивается эта функция:
hasError(field)
  {
    let classList = {
      'has-error' : this.errors[field] != undefined
    };
    return classList;
  }

Возникает странность - сообщение не высвечивается и ngClass не срабатывает, до того момента, пока я не нажму на другую кнопку или на нажму на input. Значит что то останавливает срабатывание этого ngClass-а, без колбеков все работало нормально. Что это может быть?
  • Вопрос задан
  • 88 просмотров
Подписаться 1 Средний Комментировать
Решения вопроса 1
Xuxicheta
@Xuxicheta Куратор тега Angular
инженер
Ответ написан
Комментировать
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы