Оба ui-router optional param without trailing slash и How to define optional parameter using UI-Router without trailing slash as well? имеют недостаточные аргументы и недействительны (по крайней мере, для моего сценария, то есть рабочих ссылок (href) для угловых маршрутов без конечных косых черт).Угловой адрес без косой черты с необязательными параметрами
Вот пример HTML ссылки
<div>
<a ui-sref="home">Home</a>
| <a href="#/posting/">Post 1</a>
| <a href="#/posting">Post 2</a>
| <a href="#/posting/sami">Post 3</a>
| <a ui-sref="post">Post 4</a>
| <a ui-sref="post({nam:'sami'})">Post 5</a>
</div>
Все приведенные выше ссылки работают нормально, за исключением Post 2, потому что у меня есть дополнительный параметр, и поэтому ссылка должна по крайней мере, слэш в конце
Я использую stateprovider
и state
выглядит
name: 'post',
val: {
url : '/posting/:nam',
views: {
v1: {
template: '<h4>Posting <label ng-if="stateParams.nam">{{stateParams.nam}}</label> </h4>',
controller: 'post',
resolve: {
deps: function ($ocLazyLoad) {
return $ocLazyLoad.load([{ name: appName, files: ['post.js'] }]);
}
}
},
params: {
nam: { squash: true, value: null }
}
}
}
Как я могу иметь действительную связь без пробелов, если у меня есть только возможность использовать ссылки href
и не ui-sref