Angular2延迟加载路线问题

角度M

Angular2延迟加载路线问题。

我正在使用Angular2,打字稿,html5和systemjs。

我正在尝试让延迟加载适用于我的一条基本路线。这是我关注的博客,但似乎无法正常运行:http : //blog.angular-university.io/angular2-ngmodule/

这是我得到的控制台错误:

未捕获(承诺):错误:无法匹配任何路由。网址区隔:“ 500”

我的页面是500页。下面,我在当前状态下添加了文件。

500页的模块:

import { NgModule } from '@angular/core';
import { RouterModule } from '@angular/router';
import { Component500 } from './500.component';
import { ModuleRouting500 } from './500.routes';

@NgModule({
  imports: [RouterModule, ModuleRouting500],
  declarations: [Component500],
  exports: [Component500],
  providers: []
})
export default class Module500 { }

500页的路线:

import { NgModule } from '@angular/core';
import { RouterModule } from '@angular/router';
import { Component500 } from './index';

const Routes500: Routes[] = [
  {
    path: '',
    loadChildren: Component500
  }
];

@NgModule({
  imports: [RouterModule.forChild(Routes500)],
  exports: [RouterModule],
  providers: []
})

export class ModuleRouting500 { }

这是我的核心应用程序路线页面:(我没有在此处添加路线500)

import { Routes } from '@angular/router';
import { HomeRoutes } from './components/home/index';

export const routes: Routes = [
...HomeRoutes,

{path:'500',loadChildren:'app / components / 500 / 500.module#Module500'}];

这是我的核心应用程序模块页面:(我没有在此处添加模块500)

import { NgModule } from '@angular/core';
import { routes } from './app.routes';
import { BrowserModule } from '@angular/platform-browser';
import { platformBrowserDynamic } from '@angular/platform-browser-dynamic';
import { FormsModule} from '@angular/forms';
import { APP_BASE_HREF, CommonModule } from '@angular/common';
import { RouterModule } from '@angular/router';
import { HttpModule } from '@angular/http';
import { AppComponent } from './app.component';

import { HomeModule } from './components/home/home.module';
import { AuthService } from './services/authService/authService';
import { Environment } from './models/environment/environment';

@NgModule({
  imports: [BrowserModule, FormsModule, CommonModule, HttpModule, RouterModule.forRoot(routes), 
  HomeModule
  ],
  declarations: [AppComponent],
  providers: [{
    provide: APP_BASE_HREF,
    useValue: '<%= APP_BASE %>'},
    AuthService,
    Environment
  ],
  bootstrap: [AppComponent]
})

export class AppModule { }

这是500页的index.ts文件:

export * from './500.component';
export * from './500.routes';

这是我的文件夹结构的屏幕截图:

在此处输入图片说明

这是我当前收到的控制台错误的屏幕截图:

在此处输入图片说明

完整的文件夹结构:

在此处输入图片说明

布鲁诺·若昂(BrunoJoão)

您必须通过执行以下操作在“应用”路由中添加您的惰性路由:

应用程式路线

export const routes: Routes = [
    ...,
    { path: '500', loadChildren: 'app/components/500/500.module#Module500' },
];

您必须将500.routes.ts更改为以下模块:

500.routes.ts:

import { NgModule, ModuleWithProviders } from '@angular/core';
import { Routes, RouterModule } from '@angular/router';
import { Component500 } from './index';

const routes: Routes = [
  {
    path: '', 
    component: Component500,
  }
];

@NgModule({
  imports: [RouterModule.forChild(Routes500)],
  exports: [RouterModule],
  providers: []
})

export const routing: ModuleWithProviders = RouterModule.forChild(routes);

然后,在500.module.ts中,您必须加载500.routes.ts

import { NgModule } from '@angular/core';
import { RouterModule } from '@angular/router';
import { Component500 } from './500.component';
import { routing  } from './500.routes';

@NgModule({
  imports: [RouterModule, routing],
  declarations: [Component500]
})
export class Module500 { }

现在,每个模块都知道路由,无论是否懒惰。

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

ngShow加载延迟问题

来自分类Dev

在Angular2路线中使用解析

来自分类Dev

Angular2,在更改路线之间缓存UI / Template的状态

来自分类Dev

Angular2监视路线更改

来自分类Dev

带有参数的Angular2辅助路线

来自分类Dev

向angular2中的路线添加属性

来自分类Dev

Angular2获取路线图

来自分类Dev

Angular2应用程序在单击路线时冻结

来自分类Dev

Angular2 RC和动态路线

来自分类Dev

Angular2命名路线

来自分类Dev

Angular2中路线中的常量参数

来自分类Dev

Angular 2和Webpack延迟加载

来自分类Dev

Angular2:将多层对象作为路线参数传递

来自分类Dev

Angular2模块无法匹配组件子路线

来自分类Dev

Angular2中的延迟加载到底是什么?

来自分类Dev

Angular2 RC5路由器找不到模块(延迟加载)

来自分类Dev

导航路线时,Angular 2延迟加载模块会多次初始化?

来自分类Dev

升级到Angular 11后的延迟加载路由问题

来自分类Dev

在Angular2中使用PhoneGap,加载模板时出现问题

来自分类Dev

Angular2绑定问题

来自分类Dev

Angular2子路线停止页面加载

来自分类Dev

Angular2选择问题

来自分类Dev

angular2过滤问题

来自分类Dev

SystemJS Builder,不带Angular2的捆绑包,用于延迟加载

来自分类Dev

Angular 2和Webpack延迟加载

来自分类Dev

Angular2:子路线

来自分类Dev

延迟加载的路由问题

来自分类Dev

AngularJS 1延迟路线,直到加载模型

来自分类Dev

延迟加载 Angular 2 组件缓存问题