2013-08-22 6 views
0

Мне нужно перезагрузить маршрут каждые 60 секунд. Когда я добавил <meta http-equiv="refresh" content="60"> метатег, обновите страницу, но когда мета обновите страницу, страница автоматически перейдет на главную страницу.Автоматическая перезагрузка маршрута каждые 60 секунд

Мне нужно решение для вышеуказанной проблемы. Я заполняю данные формы JSON, поэтому мне нужно обновлять страницу каждые 60 секунд.

$http.get('json/dashboard-home.json').success(function(data) { 
    $scope.campaigns = data; 

выше код, который я использовал, чтобы получить данные в формате JSON, и ниже является метод, который я использовал для доступа к другим страницам.

$scope.tab = $routeParams.tab || 0; 
    $scope.views = [ 
     { src: 'view/dashboard.html' }, 
     { src: 'view/details.html' }, 
     { src: 'view/leads.html' } 
    ]; 
+0

Вы хотите обновить ** шаблон ** каждые 60 секунд? Зачем? Разве вы не хотите обновлять * данные * каждые 60 секунд? –

+0

Данные идут из json-файлов, как я могу обновить данные, пожалуйста, предложите. – MAR

+0

В «Угловом» вы просто заменяете данные, привязанные к вашим компонентам. И пока вы делаете это внутри углового события (или называете '$ apply()' впоследствии), он автоматически обновит представление для вас. Это в значительной степени суть AngularJS! –

ответ

0

я настоятельно рекомендую вам не обновлять страницу каждые 60 секунд в течение многих причин:

  1. Это идет вразрез с AJAX, который только о загрузке, что вам нужно, и не более того.
  2. Если ваша идея о реальных данных, вы должны использовать websockets. Каждый раз, когда у вас есть новые данные json, а затем обновляйте его на интерфейсе. Это позволит решить вашу проблему правильно.
2

Вам не нужно обновлять страницу только для обновления данных - это преимущество, обеспечиваемое AJAX XHR окончено доставки данных с оригинальным ответом на клиента, как в простом старом PHP, ASP (. нетто) и т.д.

0

Я не проверял это, но она должна быть достаточными полномочиями:

var scheduleReload = function() { 
    $timeout(function() { 
    $http.get('json/dashboard-home.json').success(function(data) { 
     $scope.campaigns = data; 
    }); 
    scheduleReload(); 
    }, 60*1000); 
}; 
scheduleReload(); 

Убедитесь, что вы зависите от the $timeout service для этого.

+0

Хорошо, я проверю .. – MAR

+0

sry friend, но $ timeout не работает для меня, спасибо за вашу помощь , – MAR

Смежные вопросы