、初期化中に、私はその埋め込み後に配列変数がng-repeatに表示されないのはなぜですか?私のアプリケーションで(角度のJs)
vm.allStates = [];
述べてきたし、私がNGクリックし、国に基づいて状態を更新を使用して関数をトリガします。
vm.allStates = result;
console.log(vm.allStates);
私はそうすることによって所望の出力を得る。私はそれが何も出力しない
<option ng-repeat="option in vm.allStates" value="{{ option }}">@{{ option }}</option>
を書き、(私はLaravel 5.4を使用していたように)私の出力はHTMLブレードにおけるしかし
["selangor"];
のようなものです。初期設定であれば はまた、私は
vm.allStates = ["selangor"];
それは、しかし、これは動的表示しませんとなり、と述べました。
これはng-modelと関係がありますか? 値を更新しないので、出力をconsole.logにできます。
IないユーザーNG-オプション、私は、この場合には無効になり、デフォルトで選択されるオプション
が
EDIT 1ありがとうプレースホルダとして1つの選択した値を、(必要に応じて:。
をstoreService.storeByCountry(vm.countryId).then(function (response){
vm.totalStores = response.length;
if(response[0].country.has_zone){
vm.showZones = true;
vm.allZones = [...new Set(response.map(response => response.zone))];
vm.totalZones = vm.allZones.length;
vm.showFilterZones = true;
}
if(response[0].country.has_province){
vm.showProvinces = true;
vm.allProvinces = [...new Set(response.map(response => response.province))];
vm.totalProvinces = vm.allProvinces.length;
vm.showFilterProvinces = true;
}
if(response[0].country.has_state){
vm.showStates = true;
vm.allStates = [...new Set(response.map(response => response.state))];
vm.totalStates = vm.allStates.length;
vm.showFilterStates = true;
}
angular.forEach(response, function(value, key) {
addMarker({lat : +value.latitude, lng : +value.longitude}, vm.countryFilter);
});
console.log(vm.allStates);
panToCountry(vm.countryFilter);
return;
}, function(error){
APP.func.alerror(error);
});
データを 'vm.allStates'に書き込む場所に関するコードを投稿してください。 – Pengyy
結果のデータ構造に問題がある可能性があります – madhur
vmは範囲変数ですか?ここにスコープがありませんか? 1つ目は、vmの最初の$ scope.vmを初期化しました= {}; – mastermind