我刚开始使用Ionic和Angular 我已经创建了基于选项卡模板的离子应用程序。 我使用
添加组件ionic g component rabat
当我将组件添加到路由文件时,它使我的应用程序变得空白 (在http://localhost:8100/中不再显示)
这是我的app.routing.ts文件:
import { NgModule } from '@angular/core';
import { PreloadAllModules, RouterModule, Routes } from '@angular/router';
import { RabatComponent } from './rabat/rabat.component';
const routes: Routes = [
{ path: 'rabat', component: RabatComponent },
{
path: '',
loadChildren: () => import('./tabs/tabs.module').then(m => m.TabsPageModule)
},
{ path: 'tab4', loadChildren: './tab4/tab4.module#Tab4PageModule' },
{ path: 'tab5', loadChildren: './tab5/tab5.module#Tab5PageModule' },
{ path: 'tab6', loadChildren: './tab6/tab6.module#Tab6PageModule' },
{ path: 'tab7', loadChildren: './tab7/tab7.module#Tab7PageModule' },
{ path: 'tab8', loadChildren: './tab8/tab8.module#Tab8PageModule' }
];
@NgModule({
imports: [
RouterModule.forRoot(routes, { preloadingStrategy: PreloadAllModules })
],
exports: [RouterModule]
})
export class AppRoutingModule {}
我做错了什么?我刚开始使用这两种技术。
答案 0 :(得分:1)
自动生成离子选项卡应用程序时,将获得一个名为“ tabs.module.ts”的文件。此文件具有所有选项卡路由。
import { NgModule } from '@angular/core';
import { RouterModule, Routes } from '@angular/router';
import { TabsPage } from './tabs.page';
const routes: Routes = [
{
path: 'tabs',
component: TabsPage,
children: [
{
path: 'tab1',
children: [
{
path: '',
loadChildren: () =>
import('../tab1/tab1.module').then(m => m.Tab1PageModule)
}
]
},
{
path: 'tab2',
children: [
{
path: '',
loadChildren: () =>
import('../tab2/tab2.module').then(m => m.Tab2PageModule)
}
]
},
{
path: 'tab3',
children: [
{
path: '',
loadChildren: () =>
import('../tab3/tab3.module').then(m => m.Tab3PageModule)
}
]
},
{
path: '',
redirectTo: '/tabs/tab1',
pathMatch: 'full'
}
]
},
{
path: '',
redirectTo: '/tabs/tab1',
pathMatch: 'full'
}
];
@NgModule({
imports: [RouterModule.forChild(routes)],
exports: [RouterModule]
})
export class TabsPageRoutingModule {}
我的猜测是您自动生成了空白应用程序,该应用程序具有一个如下所示的app.routing.ts文件:
import { NgModule } from '@angular/core';
import { PreloadAllModules, RouterModule, Routes } from '@angular/router';
const routes: Routes = [
{ path: '', redirectTo: 'home', pathMatch: 'full' },
{ path: 'home', loadChildren: () => import('./home/home.module').then( m => m.HomePageModule)},
{ path: 'options', loadChildren: './options/options.module#OptionsPageModule' },
{ path: 'search', loadChildren: './search/search.module#SearchPageModule' }
];
@NgModule({
imports: [
RouterModule.forRoot(routes, { preloadingStrategy: PreloadAllModules })
],
exports: [RouterModule]
})
export class AppRoutingModule { }