Сначала нужно создать состояние называется приложение
$stateProvider.state('app', {
abstract: true,
templateUrl: "assets/partials/container.html",
controller: 'AppCtrl',
resolve: {
init: function(MyFactory) {
return MyFactory.resolver();
}
}
});
Теперь любое новое состояние вы создаете должно быть ребенок состоянием app
государства. Это также хорошо, потому что это становится вашей корневой областью. И состояние не будет обрабатываться, если ваша фабрика не решит.
Это, как вы создаете свой завод
app.factory('MyFactory', function($http){
var items = [];
return {
resolver: function(){
return $http.get('my/api').success(function(data){
items = data;
})
},
get() {
return items;
}
}
});
Теперь в любом другом государстве
$stateProvider.state('app.items', {
url: '/items',
templateUrl: "assets/partials/items.html",
controller: function($scope, MyFactory){
$scope.items = MyFactory.get();
}
});
Подробнее о насытить решимостью
https://github.com/angular-ui/ui-router/wiki#resolve
использование углового обещание разрешить его. – Ved