Прежде чем проголосовать, да, этот вопрос уже задан здесь и ответил, но ответы не являются удовлетворительными. Все они правильно предлагают добавить контроллер в конфигурацию маршрута, но здесь это не так.Свойства объекта разрешения не передаются контроллеру, неизвестная ошибка провайдера
Ожидаемое поведение для resolve
объекта в routeProvider в xxx
должен быть введен в контроллер:
var app = angular.module('X', [])
.config(['$routeProvider', function ($routeProvider) {
$routeProvider.when('/',{
controller:'XCtrl',
templateUrl: 'x.html',
resolve: {
xxx: function() {
return 'XXX from routing config.';
}
}
})
}])
.controller('XCtrl', function($scope, xxx) {
console.log('xxx = '+xxx);
});
Консоль должна получить xxx = XXX from routing config.
запись.
Вместо этого экстракта код выше не с:
Error: [$injector:unpr] Unknown provider: xxxProvider <- xxx
http://errors.angularjs.org/1.2.10/$injector/unpr?p0=xxxProvider%20%3C-%20xxx
.. etc.
XCtrl
не объявлен в HTML с ng-controller
директивы, но только определенные в конфигурации маршрутизации.