Пользовательское сообщение об ошибке не отображается - PullRequest
0 голосов
/ 27 июня 2018

У меня в приложении есть компонент автозаполнения AngularJS. Я хочу показать пользовательское сообщение об ошибке в соответствии с условиями в моем контроллере. Это то, что я пытался.

Это мой контроллер.

ctrl.searchAddresses = function(searchAddresses) {
return addressService.searchAddresses(searchAddresses)
  .then((response) => { 

    if(response.length == 0) {
      $scope.addressNotMatch = true;

    }

    residentForm.serviceAddress.$setValidity('validationError', true);
    return response;

  }, (error) => { 
    $scope.resident.serviceAddress = '';
})}

Здесь я делаю то, что я вызываю API через сервис, который возвращает список адресов. Если длина адреса равна нулю, я хочу отобразить сообщение об ошибке как «Нет адресов найдено».

Это автозаполнение компонента на мой взгляд

        <md-autocomplete class="cl-autocomplete" lex md-require-match md-selected-item="resident.serviceAddress" md-input-name="serviceAddress" md-search-text="addressSearchText" placeholder="Service Address *" md-items="address in $residentHomeController.searchAddresses(addressSearchText)"
            md-item-text="address" md-selected-item-change="$residentHomeController.selectedAddress(resident.serviceAddress)" ng-required="true" md-input-minlength="1" md-delay="1000">
            <md-item-template>
                {{address}}
            </md-item-template>
            <div ng-messages="residentForm.serviceAddress.$error" ng-if="residentForm.serviceAddress.$touched">
                <div ng-message="required">Address is required</div>
            </div>
            <div ng-messages="residentForm.serviceAddress.$error" ng-if="addressNotMatch">
                <div ng-message="validationError">No match found</div>
            </div>
        </md-autocomplete>

Ошибки не отображаются. Может кто-нибудь, пожалуйста, помогите мне решить эту проблему.

1 Ответ

0 голосов
/ 29 июня 2018

Любой, у кого есть такая проблема, может просто встроить свойство md-not-found, как это

   <md-not-found>
    No matches found.
  </md-not-found>
...