2016-04-25 66 views
1

以下是我們正在開發的頁面的控制器。使用Angular 3秒後重新加載頁面

rp3.controller('c1Ctrl', [ 
    '$scope', 
    'xFactory', 
    '$timeout', 
    '$route', 
    function($scope, xFactory, $interval, $timeout, $route) { 

     var layout_url = "json/dashboard/layout/mpu/layout.json"; 

     xFactory.getJSON(layout_url, function(layout) { // read 
      // layout's 
      // web 
      // service 
      $.each(layout, function(i, val) { 
       chart.push({ 
        "v" : val, 
        "x" : xFactory 
       }); 
       // alert(chart[0]); 
       var cType = getChartType(val.chartType); 
       // alert(cType); 
       drawLayout(parentDIV.name, val.position, val.width, 
         val.height, val.title, val.color, val.bgcolor, 
         buttomCtrl.withCtrl, cType); 

        fillLayoutData(xFactory, val.position, val.url, 
          val.height, cType); 
      }); 
     }, function() { 
      console.log("Connection! "); 

     }); 

     $timeout(reloadPage, 3000); 

     var reloadPage = function() { 
      $route.reload(); 
     } 

    } ]); 

在這裏,我們正試圖與這個重新加載頁面:

$timeout(reloadPage, 3000); 

     var reloadPage = function() { 
      $route.reload(); 
     } 

可以清楚地看到,我們處理頁面重載的方法是錯誤的。如何正確實施?

+0

爲什麼要重新加載頁面,你能不能只是包裝你想在一個函數來完成,並調用每3秒是什麼? – carlcheel

回答

5

您在使用後定義了reloadPage。切換線路:

var reloadPage = function() { 
    $route.reload(); 
} 

$timeout(reloadPage, 3000); 

或者簡單:

$timeout($route.reload, 3000);