Amb Amb - 1 month ago 6
AngularJS Question

how to pass querystring in angular routes?

I am working with AngularJS routes, and am trying to see how to work with query strings (for example,

url.com?key=value
). Angular doesn't understand the route which contains key-value pair for the same name
albums
:

angular.module('myApp', ['myApp.directives', 'myApp.services']).config(
['$routeProvider', function($routeProvider) {
$routeProvider.
when('/albums', {templateUrl: 'albums.html', controller: albumsCtrl}).
when('/albums?:album_id', {templateUrl: 'album_images.html', controller: albumsCtrl}).
otherwise({redirectTo: '/home'});
}],
['$locationProvider', function($locationProvider) {
$locationProvider.html5Mode = true;
}]
);

Answer

I don't think routes work with query strings. Instead of url.com?key=value can you use a more RESTful URL like url.com/key/value? Then you would define your routes as follows:

.when('/albums', ...)
.when('/albums/id/:album_id', ...)

or maybe

.when('/albums', ...)
.when('/albums/:album_id', ...)
Comments