1
在$stateProvider
狀態我想:如何加載服務,解析函數並將數據通過ocLazyLoad狀態傳遞給控制器?
- 負載服務JS文件
- 解決服務函數(API調用)
- 通行證產生的數據到控制器
控制器/我-controller.js
angular.module('app').
controller('MyController', ['$scope', function($scope, serviceData){
console.log(serviceData)
}]);
個
config.js
...
.state('main', {
url: "/",
templateUrl: 'templates/my-template.html',
controller: 'MyController',
resolve: {
dependencies: ['$ocLazyLoad', function($ocLazyLoad) {
return $ocLazyLoad.load([
'controllers/my-controller.js'
])
}],
serviceData: ['$ocLazyLoad', '$injector', function($ocLazyLoad, $injector) {
return $ocLazyLoad.load('services/my-service.js')
.then(function(){
var $myService = $injector.get('MyService');
return $myService.GetData();
})
}]
}
})
我希望控制器console.log
數據來從API調用的MyService不回(不包括爲簡潔,但部分作品)。相反,我得到undefined
。
任何想法? 謝謝!