AngularJS ile sunucu yoklama
AngularJS öğrenmeye çalışıyorum. Yeni veri her saniye için benim ilk denemem çalıştı:
'use strict';
function dataCtrl($scope, $http, $timeout) {
$scope.data = [];
(function tick() {
$http.get('api/changingData').success(function (data) {
$scope.data = data;
$timeout(tick, 1000);
});
})();
};
5 saniye için iplik yatarak yavaş bir sunucu benzetimi UI güncelleme ve başka bir zaman aşımı ayarı önce yanıt bekliyor. Sorunu yukarıda yazdım ne zaman Açısal modülleri kullanın ve modül oluşturma için Dİ
'use strict';
angular.module('datacat', ['dataServices']);
angular.module('dataServices', ['ngResource']).
factory('Data', function ($resource) {
return $resource('api/changingData', {}, {
query: { method: 'GET', params: {}, isArray: true }
});
});
function dataCtrl($scope, $timeout, Data) {
$scope.data = [];
(function tick() {
$scope.data = Data.query();
$timeout(tick, 1000);
})();
};
Bu, yalnızca sunucu yanıtı hızlı çalışır. Eğer herhangi bir gecikme olursa 1 cevap beklemeden ikinci bir istek ve UI Net görünüyor dışarı spamları. Geri arama fonksiyonu kullanmam gerekiyor sanırım. Denedim:
var x = Data.get({}, function () { });
ama var bir hata: "Hata: hedef.bas" Bu $resource dokümanlar dayanıyordu ama çok örnekleri var. anlamadığım bir işlev değil
Nasıl ikinci bir yaklaşım iş yapabilirim?
CEVAP
query geri arama tick işlevini çağırmak gerekir.
function dataCtrl($scope, $timeout, Data) {
$scope.data = [];
(function tick() {
$scope.data = Data.query(function(){
$timeout(tick, 1000);
});
})();
};

Sunucu ve İstemci arasında Otomatik ol...
AngularJS: submit arasındaki tüm form ...
AngularJS - sunucu tarafında işleme...
FileSystemWatcher Galatasaray dosya de...
Kullanarak bir sunucu sertifikası alma...