2016-03-14 29 views
0

我試圖懶惰加載我的JS文件與oclazyload模塊。 但我得到這個錯誤使用OC懶惰加載時未定義控制器

未捕獲的ReferenceError:dashboardController沒有定義

,而我的正確加載文件。 這裏是國家申報

.state(
    "dashboard", 
    { 
     url : "/dashboard", 
     views : { 

      "mainbody" : { 
       templateUrl : "dashboard/dashboard.html" 
      }, 
     }, 
     resolve : { 
      load : [ 
       '$ocLazyLoad', 
       function($ocLazyLoad) { 
        return $ocLazyLoad 
         .load({ 
          name : 'Dashboard', 
          files : [ 
           'dashboard/Dashboard.js', 
           'dashboard/controllers/DashboardController.js' 
          ] 
         }); 
       } 
      ] 
     }, 
     data : { 
      pageTitle : "dashboard", 
      authenticate : true 
     } 
    }) 

和我的模塊被聲明如下:

angular.module('Dashboard', [ 'nvd3', 'ngAnimate', 'ui.bootstrap', 'ngTouch', 'ui.grid' ]).controller('dashboardController', dashboardController); 

和控制器

function dashboardController ($scope , uiGridConstants, $http, $timeout) {//some staff} 

任何想法如何解決呢?

回答

0

儘量把決心擋住你的視線塊下

.state(
    "dashboard", { 
    url : "/dashboard", 
    views : { 
     "mainbody" : { 
      templateUrl : "dashboard/dashboard.html", 
      resolve : { 
       load : [ 
        '$ocLazyLoad', 
        function ($ocLazyLoad) { 
         return $ocLazyLoad 
         .load({ 
          name : 'Dashboard', 
          files : [ 
           'dashboard/Dashboard.js', 
           'dashboard/controllers/DashboardController.js'] 
         }); 
        } 
       ] 
      }, 
      data : { 
       pageTitle : "dashboard", 
       authenticate : true 
      } 
     }, 
    } 
}) 
0

請試試這個。

return $ocLazyLoad 
.load([ 
     'dashboard/Dashboard.js', 
     'dashboard/controllers/DashboardController.js' 
]);