Я пробовал все, чтобы получить разрешение ui-router передать его значение данному контроллеру-AppCtrl. Я использую инъекцию зависимостей с $inject
, и это, похоже, вызывает проблемы. Что мне не хватает?Решение маршрутизатора не вводится в контроллер
Routing
$stateProvider.state('app.index', {
url: '/me',
templateUrl: '/includes/app/me.jade',
controller: 'AppCtrl',
controllerAs: 'vm',
resolve: {
auser: ['User', function(User) {
return User.getUser().then(function(user) {
return user;
});
}],
}
});
Контроллер
appControllers.controller('AppCtrl', AppCtrl);
AppCtrl.$inject = ['$scope', '$rootScope'];
function AppCtrl($scope, $rootScope, auser) {
var vm = this;
console.log(auser); // undefined
...
}
Редактировать Вот бухнуться http://plnkr.co/edit/PoCiEnh64hR4XM24aH33?p=preview
Вы пропустили инъекционный 'auser'? 'AppCtrl. $ Injection = ['$ scope', '$ rootScope', 'auser'];' – PSL
инъекция 'auser' приводит к ошибке' [$ injector: unpr] '. :( –
Вы не можете предоставить ng-controller Вам нужно настроить его только с помощью маршрута – PSL