Я разрабатываю приложение angularjs с использованием углового ui-router. Существует страница, в которой перечислены элементы, которые можно фильтровать по имени, и она отображается в URL-адресе, например /items? Name = foo. Существует другая страница, например. пользователи, откуда вы можете перейти на страницу элементов, и те отфильтрованы пользователем, например /items? userid = bar.AngularJS одна страница с несколькими состояниями
Я делаю это, имея два состояния для одной и той же страницы в конфигурации маршрутизатора:
.state('index.items', {
url: '/items?:name',
controller: 'ItemCtrl as ctrl',
templateUrl: 'item/index.html',
brParent: 'index.home'
})
.state('index.itemsOfUser', {
url: '/items?:userid&:name',
controller: 'ItemCtrl as ctrl',
templateUrl: 'item/index.html',
brParent: 'index.home'
})
Я делаю это так, нажав на странице элементов на панели навигации идет на страницу нормальных пунктов не пользователь фильтрованной.
Но при навигации по страницам товаров от пользователей пользовательский идентификатор появляется в URL-адресе, но в $ stateparams userid не определен, и я не понимаю, почему.
Я не знаю, подходит ли мой подход, я новичок в угловом.
вы смотрите на 'state.reloadOnSearch'? ... кстати, не очень хороший способ поделиться одним и тем же состоянием среди разных приложений, вы не должны объявлять многие состояния с тем же URL ... – Hitmands
Ну, я также (пытался) спросить, если это хороший способ объявить более одного состояния для одной и той же страницы или с тем же URL-адресом, или я должен искать/вычислять другое решение. Благодаря! – nolley