2016-10-16 3 views
0

typeaheadディレクティブに問題があります。 $ http.get経由で私のサービスから私のデータからデータを取得しようとします。 コンソール出力では、私のデータがサービスから来ているのがわかりますが、結果のポップアップウィンドウが表示されません。ここでAngularJSと先読みのポップアップウィンドウがありません

私のコードです:

Htmlのテンプレート:

<input type="text" class="form-control" placeholder="Kundensuche" ng-model="selectedCompany" typeahead="c for c in companies($viewValue)" typeahead-no-results="noResults" typeahead-min-length="3">    

サービス:

var _search = function (route, id) { 
 
     return $http.get(serviceBase + 'api/' + route + '/search/' + id);   
 
    }; 
 

 
serviceHelperFactory.search = _search;

C ontroller:

$scope.companies = function (val) { 
 
       var output = []; 
 
       var promise = serviceHelper.search('companies', val); 
 
       promise.then(function (result) { 
 
        result.data.forEach(function (company) { 
 
            output.push(company.companyName); 
 
            //output.push(company); 
 
        }); 
 
        console.log(output);     
 
       }, function (error) { 
 
        adminInvoiceService.serviceErrorMessage(error); 
 
       }); 
 
       return output; 
 
      }

ありがとう!

+0

あなたangularjsバージョンとUI-ブートストラップバージョンは何ですか?あなたのコードは、企業での 'typeahead = "c($ viewValue)"'を 'uib-typeahead = "cの企業($ viewValue)の" c " – Peng

答えて

0

[OK]を修正しました。 同じ問題を抱えているのは私のソリューションです!

$scope.companies = function (val) { 
 
       return $http.get('http://localhost:5569/api/companies/search/'+val).then(function (res) { 
 
        var companies = []; 
 
        console.log(companies); 
 
        res.data.forEach(function (item) { 
 
         companies.push(item);      
 
        }); 
 
        console.log(companies); 
 
        return companies; 
 
       }); 
 
      };

関連する問題