Mam następujący skonfigurować:Jak mogę automatycznie przejść do ostatniego wybranego stanu podrzędnego, gdy wyświetlam tylko stan nadrzędny z routerem ui?
var admin = {
name: 'admin',
url: '/admin',
views: {
'menu': {
templateUrl: '/Content/app/admin/partials/menu.html',
},
'content': {
templateUrl: function (stateParams) {
var content = localStorage.getItem('ls.adminPage');
if (content != null && content != "") {
return '/Content/app/admin/partials/' + content + '.html';
} else {
return '/Content/app/common/partials/empty.html';
}
}
}
}
};
var adminContent = {
name: 'admin.content',
parent: 'admin',
url: '/:content',
views: {
'[email protected]': {
templateUrl: function (stateParams) {
localStorage.setItem('ls.adminPage', stateParams.content);
return '/Content/app/admin/partials/' + stateParams.content + '.html';
},
}
}
}
Co się dzieje, że gdy użytkownik wcześniej do strony /admin/xxx
to następnym razem /admin
wybrano będzie ponownie powrócić na stronę /admin/xxx
.
Jednak wizualnie to jest bałagan jak URL przeglądarka pokazuje jak /admin
a państwo nie jest prawidłowo ustawiony.
Czy istnieje sposób, w jaki mogę przechowywać stan podrzędny, a następnie mieć go tak, że gdy użytkownik przegląda do rodzica, że przejdzie do ostatniego znanego stanu dziecka i mają ten adres URL pokazać w przeglądzie?
Czy spojrzał na funkcjach onEnter dla UI-routerze? Zastanawiasz się tylko, czy możesz zapisać ostatnią nazwę stanu podrzędnego administrowanego administratora w pamięci lokalnej, tak jak robisz szablon, i czy istnieje jeden stan $ state.go ("stan ostatniego dziecka")? –