.state('tabs.map', {
url:'/map/{location_id}',
params: {
location_id: { value: -1 }
},
views: {
'map-tab':{
templateUrl:'templates/map.html',
controller:'MapCtrl'
}
}
})
Я попробовал несколько различных опций для необязательных параметров, которые я нашел в Интернете, но никто из них не работает точно так, как я и ищу. Добавленный код позволяет:
-
/вкладка/карта/.*?
-
/вкладка/карта/
но не
-
/вкладка/карта
Я не уверен, почему конечная косая черта вызывает проблему, потому что из того, что я прочитал, это не должно быть проблемой, Кто-нибудь знает, как это решить?
Недавно проведенные консультации
- Angular UI-Router: несколько URL-адресов для одного состояния
- UL-маршрутизатор AngularJs - одно состояние с несколькими URL-адресами
- Могут ли маршруты angularjs иметь дополнительные значения параметров?
- Laravel 4 Проблемы с множественными и необязательными параметрами получения
Решение
Введение squash в переменную param
.state('tabs.map', {
url:'/map/:location_id',
params: {
location_id: { value:null, squash:true }
},
views: {
'map-tab':{
templateUrl:'templates/map.html',
controller:'MapCtrl'
}
}
})