ui-router resolve with dynamic parameters
You were close with $routeParams. If you use ui-router use $stateParams instead. This code works for me: .state(‘recipes.category’, { url: ‘/:cat’, templateUrl: ‘/partials/recipes.category.html’, controller: ‘RecipesCategoryCtrl’, resolve: { category: [‘$http’,’$stateParams’, function($http, $stateParams) { return $http.get(‘/recipes/’ + $stateParams.cat) .then(function(data) { return data.data; }); }] } })