我已经在已经开发的应用程序上实现了延迟加载,但在实现后,它正在加载除主页之外的任何其他组件,而这只发生在主页上。我的根级路由是这样的:
{path: '', redirectTo: 'home', pathMatch: 'full'},
{ path: '', loadChildren: './views/home/home.module#HomeModule'},
{ path: 'resetpass', loadChildren: './views/resetpass/resetpass.module#ResetpassModule'},
{ path: 'forgotpass', loadChildren: './views/forgotpass/forgot.module#ForgotpassModule'},
{ path: 'signup', loadChildren: './views/signup/signup.module#SignupModule'},
{ path: 'login', loadChildren: './views/login/login.module#LoginModule' },
{ path: 'otp', loadChildren: './views/otp/otp.module#OtpModule'},
{ path: 'school', loadChildren: './views/school/school-home/school-home.module#SchoolhomeModule'},
{ path: 'school/addstudents', loadChildren: './views/school/add-students/add-students.module#AddstudentsModule'},
{ path: 'school/managestudents', loadChildren: './views/school/manage-students/manage-students.module#ManagestudentsModule'},
{ path: 'school/ViewLogsDetails', loadChildren: './views/school/View-Log-Details/logdetails.module#LogdetailsModule'},
{ path: 'school/accountinfo', loadChildren: './views/school/accountinfo/accountinfo.module#AccountinfoModule'},
{ path: 'school/subscribe', loadChildren: './views/school/cals-subscribe/cal-subscribe.module#CalsubscribeModule'},
{ path: 'school/addstaff', loadChildren: './views/school/add-staff/add-staff.module#AddstaffModule'},
{ path: 'school/trans-track/:id', loadChildren: './views/school/trans-track/trans-track.module#TranstrackModule'},
{ path: '**', loadChildren: './views/home/home.module#HomeModule' }
在主页上,这会加载AddstudentsComponent,即使它应该在登录后就可以工作,下面是AddStudent的路由模块:
import { NgModule } from '@angular/core';
import { RouterModule, Routes } from '@angular/router';
import { AddStudentsComponent } from './add-students.component';
const routes: Routes = [
{ path: '', component: AddStudentsComponent}
];
@NgModule({
exports: [RouterModule],
imports: [RouterModule.forChild(routes)]
})
export class AddstudentsRoutingModule { }
一旦我将路径从"更改为类似"school/addstudent"的内容,它就会开始加载AddStaff组件。
在我将Module放入每个组件级别之前,整个应用程序都运行良好。不知道如何应对。
我在app.Module中包含了Lazy Loading Module。如下所示:
import { AddstaffModule } from './views/school/add-staff/add-staff.module';
但我没有对其他组件级模块做同样的操作。因此,应用程序的行为不符合要求。
我现在所做的是从app.module.ts中删除组件级模块,就像这行被删除了一样:
import { AddstaffModule } from './views/school/add-staff/add-staff.module';
而且,它变得始终如一。