質問

角度を使用して選択要素にデフォルト値を持ちようとしているため、機能していないようです。私が何をしても、データがコントローラ内でリモートでロードされたときに、常に空白のデフォルト要素を選択します。

これは私のHTMLです:

<select 
ng-options="Domain.Name for Domain in Domains"
ng-model="CurrentDomain"
ng-init="CurrentDomain = Domains[0]"
></select>
.

これは関連するコントローラコードです:

$scope.Domains = $resource('api/domain').query();
$scope.CurrentDomain = $scope.Domains[0];
.

私はこの質問が何度も尋ねられたことを認識しています、そして私は他のすべての質問を読みました、しかし、提案はうまくいかないようです。誰かが他の提案をしているならば、私に知らせてください。

ありがとう。

役に立ちましたか?

解決

問題は約束です。$scope.Domainsは、解決することを約束し保留中です。そのため、$scope.Domains[0]はその時点で未定義です。

だから、正しいコードは以下のように

です。
var Domains = $resource('api/domain').query(function(){
    $scope.Domains = Domains;
    $scope.CurrentDomain = Domains[0];
});
.

Plunkrバージョン - > http://plnkr.co/edit/pjswdkt4lhwvecy0pmc?p=previewewd/a>

https://github.com/angular/angular.js/issues/4298 ng-initはもはや約束を解決することはできません。

ライセンス: CC-BY-SA帰属
所属していません StackOverflow
scroll top