Компонент именованного маршрутизатора не может быть показан в моем угловом проекте Nativescript - PullRequest
0 голосов
/ 25 января 2019

Я создаю проект, использующий nativescript-angular, и мне нужны страница входа и страница просмотра. Я использую именованный маршрут для TabItem s.

Я ссылаюсь на документ из nativescript, чтобы установить мои маршруты, но названный компонент маршрута не может отображаться. Как это можно показать?

мой маршрут такой:

const routes: Routes = [{
  path: '',
  redirectTo: '/login',
  pathMatch: 'full',
}, {
  path: 'login',
  loadChildren: '~/pages/login/login.module#LoginModule',
}, {
  path: 'index',
  component: TabsComponent,
  children: [{
    path: 'home',
    outlet: 'homeTab',
    component: HomePageComponent
  }, {
    path: 'question',
    outlet: 'questionTab',
    component: QuestionAddComponent
  }]
}];

@NgModule({
  imports: [NativeScriptRouterModule.forRoot(routes)],
  exports: [NativeScriptRouterModule]
})

html компонента моих вкладок:

<GridLayout>
  <TabView androidTabsPosition="bottom" [(ngModel)]="currentTab" (selectedIndexChanged)="onSelected($event)" id="tabContainer"
    class="icon" selectedTabTextColor="orangered">
    <StackLayout *tabItem="{ title: '&#xe906;Home' }">
      <page-router-outlet name="homeTab"></page-router-outlet>
    </StackLayout>
    <StackLayout *tabItem="{ title: '&#xe908;Question' }">
      <page-router-outlet name="questionTab"></page-router-outlet>
    </StackLayout>
  </TabView>
</GridLayout>

и я перехожу к странице индекса в компоненте входа

  constructor(
    private storage: StorageService,
    private router: Router
  ) { }

  turnToFirstPage() {
    // this.router.navigateByUrl('/index/(homeTab:home//questionTab:question)');
    this.router.navigate(['/index', { outlets: { homeTab: ['home'], questionTab: ['question'] } }]);
  }

оба эти метода неверны. HomePageComponent и QuestionAddComponent не могут отображаться.

...