2016-10-03 11 views
0

私はAngularを学んでいて、それをモックアップで実装しようとしました。Angular typeaheadを実装しようとすると、typeaheadの結果は未定義として表示されます。 HTMLのコードスニペット、Angular Typeaheadの結果は未定義です

<input type="text" id="search" ng-model = "selectedEnterprise" class="form-control form-design input-md enable collapse" placeholder="search for an enterprise" uib-typeahead = "enterprise.name as vm.enterprises.name for enterprise in vm.enterprises | filter:$viewValue | limitTo : 3 "> 

コントローラコードスニペットIは、バックエンドのためのMongoDBとNodeJSフレームワークを使用

$http.get(path + '/enterprise/all/' + num) 
 
        .then(function success(response) { 
 
         vm.enterprises = response.data; 
 
         temp = vm.enterprises; 
 
         console.log(vm.enterprises); 
 
        }, function error(response) { 
 
         console.log(response); 
 
        });

+0

を参照してください

uib-typeahead = "name as enterprise.name for enterprise in vm.enterprises | filter:$viewValue | limitTo : 3 

ようにする必要があります。 enterprises.name "それは" enterprise.nameとしての名前 "でなければなりません –

答えて

2

​​

先行入力で

<input type="text" id="search" ng-model = "selectedEnterprise" class="form-control form-design input-md enable collapse" placeholder="search for an enterprise" uib-typeahead = "enterprise.name as enterprise.name for enterprise in vm.enterprises | filter:$viewValue | limitTo : 3 "> 

に、我々はvm.enterprises(データソース)のための参照オブジェクトの企業を作成しているから、そこから自分の先行入力コード

を変更

参照オブジェクト名前変数を抽出し、それを割り当てるように依頼するng-model

uib-typeahead = "enterprise.name as enterprise.name for enterprise in vm.enterprises 
+0

それは – Idlliofrio

+0

歓声メイト:)ハッピーコーディング –

0

代わりの

uib-typeahead = "enterprise.name as vm.enterprises.name for enterprise in vm.enterprises | filter:$viewValue | limitTo : 3 

発現があなたの代わりにVMとしてenterprise.name」の特定のインスタンスenterprise.nameではなく、すべてのインスタンスvm.enterprises.name

関連する問題