Skip to content

Instantly share code, notes, and snippets.

@jasdeepsingh
Last active August 29, 2015 14:04
Show Gist options
  • Star 0 You must be signed in to star a gist
  • Fork 0 You must be signed in to fork a gist
  • Save jasdeepsingh/4ececde75ec016662e4e to your computer and use it in GitHub Desktop.
Save jasdeepsingh/4ececde75ec016662e4e to your computer and use it in GitHub Desktop.
angular-routing
// in router
angular.module('app-name', [], function($routeProvider, $locationProvider, UserService) {
$routeProvider.
when('/user/:userName', {
templateUrl: 'userShowPage',
controller: UserController,
resolve: {
//resolve functions here...
loadedUser: UserController.resolve.loadUser
}
})
})
// Service
.factory('UserService', function($http) {
return {
loadUser: function(userName, successCallback, ) {
$http.get("/api/users/" + userName + ".json")
}
}
})
// in controller
function UserController($scope, $route, UserService) {
// controller code
$scope.user = $route.current.locals.loadedUser;
}
// Resolve Object:
UserController.resolve = {
loadUser: function(UserService, $q, $route) {
var deferred = $q.defer();
UserService.loadUser($route.current.params.userName).then(function(data) {
deferred.resolve(data.user)
})
return deferred.promise;
}
}
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment