Я работаю над проектом AngularJS v1.5.8, в котором используется angular-ui-router. Маршруты настроены примерно так:
var myApp = angular.module('demoapp', ['ui.router']);
myApp.config(function($stateProvider) {
$stateProvider
.state('landing', {
url: '/?paramOne¶mTwo¶mThree',
template: '<h3>Landing Page with params.</h3>',
})
.state('landing.pageA', {
url: '',
template: '<h3>Landing Page A!</h3>',
})
.state('landing.pageB', {
url: '',
template: '<h3>Landing Page B!</h3>',
})
.state('error', {
url: '/error',
template: '<h3>Error Page!</h3>',
});
$urlRouterProvider.otherwise('/');
});
Для состояний landing
параметры не всегда передаются в указанном порядке. И иногда один или несколько параметров опускаются. Другой сервис перенаправляет на это приложение и передает параметры запроса.
- Есть ли способ сделать некоторые или все параметры необязательными?
- Требуется только первый, и не должно иметь значения, если остальные пройдены?
- Сделать порядок их передачи не имеет значения? Но по-прежнему отображать шаблон, указанный в состоянии
landing
.