首页 文章

延迟加载后的路由是在Angular6中加载错误的组件

提问于
浏览
0

我已经在已经开发的应用程序上实现了延迟加载,但是在实现之后,它正在加载除主页之外的任何其他组件,这仅在主页上发生 . 我的根级别路由是这样的:

{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放在每个组件级别 . 不知道如何应对 .

1 回答

  • 0

    我在app.module.ts中包含了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';
    

    而且,它始终如一 .

相关问题