Я искал решение о polling data using AngularJS, и я нашел здесь, в stackoverflow.угловая точка обозначение лучше описание
В этом решении (как показано ниже) используется в JavaScript Object, чтобы вернуть ответ (data.response
), и если я пытаюсь заменить этот data
объект для простого яваскрипта массива он не работает, я бы как точно знать, почему мне нужно пойти с dot notation и почему один массив не работает? (Это было бы большие ссылки или объяснения с примерами)
app.factory('Poller', function($http, $timeout) {
var data = { response: {}, calls: 0 };
var poller = function() {
$http.get('data.json').then(function(r) {
data.response = r.data;
data.calls++;
$timeout(poller, 1000);
});
};
poller();
return {
data: data
};
});
Пытаясь подвести итог своей цели (то, что я хочу, чтобы действительно понять): где var data = { response: {}, calls: 0 };
может быть var data = {};
, а затем response.data
будет выставиться непосредственно к данным data = r.data
и return {data: data};
, почему мне нужно полагаться на точечную нотацию?
я удалить точку, он все еще работает http://plnkr.co/edit/lIltfOWL4YObm5oRB13W?p=preview – zsong
Но вы все еще получить доступ к корыту ответа 'data.response' я имел в виду: вместо' вара данных = {response: {}, calls: 0}; 'be' var data = []; ' –
Я попытался заменить на вашем примере, и теперь он не работает http://plnkr.co/edit/kCV95VJlCpSq6etVNJVf?p=preview –