Я использую отличный модуль ui-router
в своем приложении. В рамках этого я использую named views для управления "динамической поднавигацией", которую я использую в приложении.
Рассмотрим следующее:
$urlRouterProvider.otherwise('/person/list');
$stateProvider
.state('person', {
url: '/person',
abstract: true,
})
.state('person.list', {
url: '/list',
views: {
"[email protected]": {
templateUrl: "person.list.html",
controller: 'PersonListController'
}
}
})
.state('person.details', {
url: '/{id}',
views: {
'[email protected]': {
templateUrl: "person.details.html",
controller: 'PersonController'
},
'[email protected]': {
templateUrl: "person.nav.html",
controller: 'PersonNavController'
}
}
});
Когда пользователи впервые посещают приложение, им предоставляется список людей. Когда они нажимают на человека, они попадают на страницу сведений. Довольно простой материал. Здесь разметка, если она помогает...
<div>
<aside ui-view="nav"></aside>
<div ui-view="main"></div>
</div>
Однако PersonNavController
вызывает службу REST для получения списка людей, поэтому при просмотре человека пользователь может перемещаться по элементам-братьями. Использование вышеописанного метода заставляет шаблон и контроллер повторно отображать, что вызывает задержку после каждого щелчка, несмотря на то, что контент никогда не меняется.
Есть ли способ сохранить вид '[email protected]'
загружен и обновить только '[email protected]'
?