Я довольно новичок в Aurelia, и я пытаюсь понять, что является лучшим способом доступа и отображения данных на подстранице дочернего маршрутизатора. Данные хранятся в методе активации модели представления дочернего маршрутизатора. Моя проблема заключается в отображении данных при первом вводе или перезагрузке подстраницы дочернего маршрутизатора. К сожалению, он не работает. Как только я показываю подстраницу и перехожу к другой, все работает отлично.Aurelia: Как получить доступ к данным, хранящимся в модели представления дочернего маршрутизатора
ребенка-router.js
export class ChildRouter {
configureRouter(config, router) {
config.title = 'Child Router Title';
config.map([
{ route: '', redirect: 'basics'},
{ route: ['basics', ''], name: 'basics', moduleId: './basics/basics', nav: true, title: 'Basics' },
{ route: 'data', name: 'data', moduleId: './data/data', nav: true, title: 'Data' }
]);
this.router = router;
}
activate() {
this.var1 = "Var1. Only works when I reenter a subpage.";
this.var2 = "Var2. Only works when I reenter a subpage.";
}
}
ребенка router.html
<template>
<require from="../components/detail-navigation.html"></require>
<h2>${router.title}</h2>
<detail-navigation router.bind="router"></detail-navigation>
<div class="page-host">
<router-view></router-view>
</div>
</template>
basics.html
<template>
<h2>Basics Title</h2>
<h3>${var1}</h3>
</template>
data.html
<template>
<h2>Data Title</h2>
<h3>${var2}</h3>
</template>
Надеюсь, вы понимаете мою проблему.
Here is a link to a test projekt on git.
Я с нетерпением жду любых рекомендаций.
«ChildRouter» является нормальной страницей справа, с видом и моделью просмотра? Вы хотите отображать данные в вашем представлении «ChildRouter» или вы хотите отображать данные на странице, которую будет отображать маршрутизатор? – Randy
Да точно. ChildRouter - обычная страница. Я хочу отобразить данные на странице (basics.html и data.html), которые маршрутизатор будет отображать с помощью вида маршрутизатора. –