У меня есть дочерний маршрутизатор в одном из моих представлений.Этот дочерний маршрутизатор используется, чтобы позволить людям переходить к различным подпредставлениям.Теперь эти подпредставления не требуют какой-либо логики, поэтому, используя только представление .html без js viewmodel works find.Это то, что некоторые из этих подпредставлений довольно длинные, и если вы переходите от одного к другому, то положение прокрутки остается на том же месте, что и на предыдущей странице.
configureRouter(config, router) {
config.map([
{ route: '', name: 'main', moduleId: 'main_view', nav: false, title: 'Main' },
{ route: 'sub_view_1', name: 'p1', moduleId: 'sub_view_1.html', nav: true },
{ route: 'sub_view_2', name: 'p1', moduleId: 'sub_view_2.html', nav: true },
{ route: 'sub_view_3', name: 'p2', moduleId: 'sub_view_3.html', nav: true },
{ route: 'sub_view_4', name: 'p3', moduleId: 'sub_view_4.html', nav: true },
{ route: 'sub_view_5', name: 'p4', moduleId: 'sub_view_5.html', nav: true },
{ route: 'sub_view_6', name: 'p5', moduleId: 'sub_view_6.html', nav: true }
]);
this.router = router;
}
Возможное решение - добавитьтег script
со следующим запросом к каждому подпредставлению:
$('html, body').animate({ scrollTop: 0 }, 'slow');
Однако это будет смешивать js и html.
Другим возможным решением будет создание модели представления для каждого изподвиды.Но кажется, что нужно просто добавить одну строку кода.
Есть ли другое возможное решение?Может быть, у каждой ссылки на подвид есть одна и та же модель представления?