У меня есть около 15 страниц в моем проекте, я хочу иметь страницу с 2 вкладками. Чтобы добиться этого, я создал папку с именем tabs
внутри app
.
Эта папка tab
имеет 3 страницы - 1. вид проекта 2. проектные задачи 3. проектные разговоры
I добавлены 2
и 3
в виде проекта, как указано в документации, но я получаю сообщение об ошибке:
Uncaught (в обещании): Ошибка: невозможно сопоставить ни один маршрут. Сегмент URL: 'projectview / tab1'
Ошибка: невозможно сопоставить ни один маршрут. Сегмент URL: 'projectview / tab1'
Ниже projectview-routing.module.ts код
import { NgModule } from '@angular/core';
import { Routes, RouterModule } from '@angular/router';
import { ProjectviewPage } from './projectview.page';
const routes: Routes = [
{
path:'projectview',
component: ProjectviewPage,
children:[
{path: 'tab1',
//loadChildren:'./../projecttasks/projecttasks.module#ProjecttasksPageModule'
loadChildren: () => import('../projecttasks/projecttasks.module').then( m => m.ProjecttasksPageModule)
},
{path: 'tab2',
//loadChildren:'./../projectconversations/projectconversations.module#ProjectconversationsPageModule'
loadChildren: () => import('../projectconversations/projectconversations.module').then( m => m.ProjectconversationsPageModule)
},
{
path: '',
redirectTo: '/projectview/tab1',
pathMatch: 'full'
}
]
},
{
path:'',
redirectTo:'/projectview/tab1',
pathMatch: 'full'
}
];
@NgModule({
imports: [RouterModule.forChild(routes)],
exports: [RouterModule],
})
export class ProjectviewPageRoutingModule {}
projectview.page. html
<ion-tabs>
<ion-tab-bar slot="bottom">
<ion-tab-button tab="tab1">
<ion-icon name="flash"></ion-icon>
<ion-label>Tab One</ion-label>
</ion-tab-button>
<ion-tab-button tab="tab2">
<ion-icon name="apps"></ion-icon>
<ion-label>Tab Two</ion-label>
</ion-tab-button>
</ion-tab-bar>
</ion-tabs>
Я также прокомментировал маршруты страниц вкладок из app-routing.module.ts
// {
// path: 'projecttasks',
// loadChildren: () => import('./tabs/projecttasks/projecttasks.module').then( m => m.ProjecttasksPageModule)
// },
// {
// path: 'projectconversations',
// loadChildren: () => import('./tabs/projectconversations/projectconversations.module').then( m => m.ProjectconversationsPageModule)
// }
Чего мне не хватает?
Редактировать 1
Я даже попытался вызвать путь, как это в pageview.module.ts, но это не сработало
{path: 'tab1',
//loadChildren:'./../projecttasks/projecttasks.module#ProjecttasksPageModule'
loadChildren: () => import('../projecttasks/projecttasks.module').then( m => m.ProjecttasksPageModule)
},
{path: 'tab2',
//loadChildren:'./../projectconversations/projectconversations.module#ProjectconversationsPageModule'
loadChildren: () => import('../projectconversations/projectconversations.module').then( m => m.ProjectconversationsPageModule)
},