//In the previous example, we show write a promise in the config funciton,
//But we can image if the logic get complex, the code would be ugly,
//there is a way to handle the code in config, it is using "resovle:{}"
var app = angular.module("app", ["ngRoute"]);
app.config(function($routeProvider) {
$routeProvider
.when('/',
{
resolve: {
doFirst: appdata.loadData,
doSecond: appdata.getAdvices
},
templateUrl: "app.html",
controller: "AppCtrl"
})
});
var appdata = app.controller('AppCtrl',function($scope, $route){
$scope.model = {message: $route.current.locals.doFirst+$route.current.locals.doSecond};
console.log($route);
console.log($route.current.locals.doFirst);
});
appdata.loadData = function($q){
var defer = $q.defer();
defer.resolve("Getting data");
console.log("Getting data");
return defer.promise;
};
appdata.getAdvices = function($q){
var defer = $q.defer();
defer.resolve("Getting advices");
return defer.promise;
};