AngularJS: маршрутизация с URL-адресом, имеющим необязательные параметры

У меня есть URL-адрес в моем app.js, содержащий маршруты. скажем, URL-адрес:

/api/:opt1/:opt2/:opt3/users

Я хочу, чтобы мой URL работал в любом случае, я могу игнорировать необязательные параметры (opt1, opt2 или opt3, может быть все или несколько). Как я могу этого добиться.

Есть ли способ вызвать $location.path('/users') и указать также, каковы значения дополнительных параметров?


person shyam    schedule 12.04.2014    source источник


Ответы (1)


Необязательные параметры маршрута отмечены ?, например:

`/users/:id?`

Тогда этот маршрут совпадает с путями /users и /users/1.

person karaxuna    schedule 12.04.2014
comment
С Angular 1.3.4 я получаю эту ошибку, когда пытаюсь это сделать: Error: Invalid parameter name '' in pattern '/users/:id?' - person Martyn Chamberlin; 18.03.2015
comment
У меня не работает ... Нужен ли мне какой-то модуль / библиотека? .. Я использую ui-router? Я также пробовал добавить ngRoute, но все равно безрезультатно - person Sami; 25.11.2015
comment
@Sami это не для ui-router. В ui-router вы должны использовать строку запроса /users?id - person karaxuna; 25.11.2015