değiştirdiğinde tamamen güncellenmemiştir. Ajax çağrısı değerini değiştirdiğinde ng-yinelemem neden yenilenmiyor? Birçok Q &'u gördüm Burada olduğu gibi, ama bunların hiçbiri ajax çağrısı hakkında konuşmadı.ng-tekrar listesi, ajax çağrısı değeri
HTML:
<div class="row" ng-controller="EntryCtrl">
<div id="treeview" class="col-xs-4 col-sm-4 col-md-4 col-lg-4">
<ul>
<li ng-repeat="root in rootEntry">{{root.Name}}</li>
</ul>
</div>
</div>
JS:
function EntryCtrl ($scope, $http) {
$scope.rootEntry = [];
$http.get('read/root').success(function(root) {
$scope.rootEntry = root;
console.log($scope.rootEntry);
});
}
Ve konsol sunucusu döndürdü bir dizi oturum yaptı. Ancak html'deki liste hiçbir zaman güncellenmedi. $scope.$apply
kullansaydım, $digest
ile ilgili bir hata olur.
[Object]
0: Object
Attributes: null
Id: "534580464aac494e24000001"
Name: "Registry"
Path: ""
__proto__: Object
length: 1
__proto__: Array[0]
Konsol Çıktı Bu yüzden root
sunucu getiri yapısı bu. Veri tipi sorun olur mu? Çünkü Array
yerine Object
. Golang'ı sunucu olarak kullanıyorum ve MongoDB'den verileri paketlemek için json.Marshal()
kullanın.
Güncelleme
function EntryCtrl ($scope, $http) {
$scope.rootEntry = [];
$http.get('read/root').success(function(root) {
$scope.rootEntry = root;
console.log($scope.rootEntry);
});
console.log($scope.rootEntry);
}
ikincisi çıktı []
olduğunu. Muhtemelen $ http'un uyumsuzluğu nedeniyle, sebebi olacak mı? Nihai
nedenini biliyorum. Düğümle bazı süslemeler yapacak olan jsTree
adlı bir eklenti kullandım, böylece eklediğim düğümün üzerine yazılacaktır.
Hepinize teşekkürler.
Bu sorunsuz çalışır, '$ http' bir özetini tetikler - Eğer geri almak zaman emin verileri farklıdır? – tymeJV
@tymeJV Eminim farklı. Daha fazla ayrıntı soruda güncellendi. – Melkor