Предположим, у меня есть один маршрут:Resolve данные не найдены в AngularJS контроллера
angular.module('LiveAPP', ['ui.router',
'LiveAPP.main',
'LiveAPP.artist',
'liveAPP.signup',
'LiveAPP.factory',
'liveAPP.review'
])
.config(function($urlRouterProvider, $stateProvider) {
$stateProvider.state("home", {
url:"/",
templateUrl : '/home.html',
controller : 'mainCtrl',
resolve: {
artists: function() {
console.log('resolved')
return "I want this in controller";
}
}
})
})
До конкретизации моего mainCtrl я хочу функция связана с художниками, чтобы быть запущен. Таким образом, в моем контроллере у меня есть следующая настройка:
angular.module('LiveAPP.main',['LiveAPP.factory'])
.controller('mainCtrl', ['$rootScope','$scope','$http', '$location','dataFactory','artists', mainCtrl])
function mainCtrl($rootScope,$scope,$http,$location,dataFactory,artists){
console.log(artists) //expect the return from resolve in ui.router
}
Когда художники, работающие в консоли, оцениваются как неопределенные. Кто-нибудь может понять, почему это так?
ли вам посчастливилось иметь нг-контроллер на вашем HTML тоже? – Icycool