0

У меня есть эта модель в моем route.jsУгловая маршрут UI

.state('organizations', { 
     url: '/companies/:options?/:keyvalue', 
     templateUrl: '../app/components/organizations/organization.html', 
     controller: 'OrganizationController', 
     controllerAs: 'organizationsCtrl' 
     }) 

И когда я пытаюсь получить доступ к URL-

/companies/ 
/companies/users 

Он работает нормально, но когда я пытаюсь

/companies/users/1 

Переадресация на вид по умолчанию

// For any unmatched url, redirect to /dashboard 
    $urlRouterProvider.otherwise('/dashboard'); 

Кто-нибудь может помочь мне увидеть, что я делаю неправильно? спасибо!

+0

почему '?' в URL-адресе? – Weedoze

+0

Я использую его для установки, который является необязательным параметром, поскольку я читаю на другом сообщении –

ответ

0

Я полагаю, что вы хотели бы сделать необязательными параметры options.

Параметры маршрута в UI Router по умолчанию не являются обязательными.

? Суффикс параметров маршрута просто говорит UI маршрутизатор, где часть запроса шаблона URL должен начинаться

Ваш URL должен будет выглядеть следующим образом url: '/companies/:options/:keyvalue'

Это будет соответствовать

/companies/ 
/companies/users/ 
/companies/users/1 
+0

Без? , Я не могу получить доступ даже к/компаниям/вот почему я добавляю его –

+0

Если вы переходите в '/ companies/users/1', которые идут в противном случае? – Weedoze

+0

точно, но, если я положил? на url: '/ company /: options? /: keyvalue', по крайней мере, идет/компании// компании/пользователи/ –