Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/471.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 每60秒自动重新加载路线_Javascript_Angularjs - Fatal编程技术网

Javascript 每60秒自动重新加载路线

Javascript 每60秒自动重新加载路线,javascript,angularjs,Javascript,Angularjs,我需要在每60秒后重新加载路线。当我添加了元标记时,它会刷新页面,但当元刷新页面时,页面会自动重定向到主页 我需要解决上述问题。我正在填充JSON格式的数据,所以我需要每60秒刷新一次页面 $http.get('json/dashboard-home.json').success(function(data) { $scope.campaigns = data; 上面是我用来获取json数据的代码,下面是我用来访问其他页面的方法 $scope.tab = $routeParams.ta

我需要在每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' }
    ];

您不需要仅仅为了刷新数据而刷新页面-这是AJAX XHR提供的优势,它比在普通的旧PHP、ASP(.net)等中使用原始响应向客户端提供数据要好。

我没有测试过这一点,但应该足够了:

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

确保您依赖于此。

我强烈建议您不要每60秒刷新一次页面,原因有很多:

  • 它与AJAX相反,AJAX只加载您需要的内容,仅此而已
  • 如果您的想法是关于实时数据,那么您应该使用WebSocket。每次您有新的json数据,然后在前端更新它。这将以正确的方式解决您的问题

  • 是否要每60秒刷新一次模板?为什么?您是否希望每60秒刷新一次数据?数据来自json文件,请建议我如何刷新数据。在Angular中,您只需替换绑定到组件的数据。只要您在角度事件中执行此操作(或之后调用
    $apply()
    ),它就会自动为您更新视图。这就是AngularJS的全部观点!所以不需要做任何额外的事情来刷新数据。对吧?你没有给我们看任何代码,所以很难判断你是否需要做任何额外的事情。您需要定期请求新数据(可能使用
    $timeout
    $http
    $resource
    )。sry friend但$timeout不适用于我,谢谢您的帮助。