【问题标题】:How to route between modules in angular2?如何在angular2中的模块之间路由?
【发布时间】:2017-02-06 09:43:40
【问题描述】:

我正在使用 angular2 Final 进行开发。

我已经创建了 3 个模块。

  1. 应用模块
  2. 项目模块
  3. 设计师模块

以前我只有 AppModule,我在其中导入了 RoutingModule,它运行良好。

import {NgModule} from '@angular/core';
import { Routes, RouterModule } from '@angular/router';
import {ProjectManagerComponent} from './project-manager/project-manager.component';
import {DesignerComponent} from './designer/designer.component';

const appRoutes: Routes = [
  {path: '',redirectTo: 'project-manager',pathMatch: 'full'},
  { path: 'project-manager', component: ProjectManagerComponent },
  { path: 'designer/:id', component:DesignerComponent }  
];

@NgModule({
  imports:[RouterModule.forRoot(appRoutes)],
  exports:[RouterModule]
})
export class AppRoutingModule { }
export const routingComponents=[ProjectManagerComponent,DesignerComponent]

但最近我为 ProjectManager 和 Designer 创建了单独的 NgModules。

我在各自模块的声明中保留了 ProjectManagerComponent、DesignerComponent。

我想知道是否可以使用相同的路由配置路由到这些模块,或者我是否需要更改某些内容。

我的路由不再起作用了。

任何输入?

【问题讨论】:

  • 最终解决方案是什么?

标签: javascript angular typescript angular2-routing


【解决方案1】:

而不是

export const routingComponents=[ProjectManagerComponent,DesignerComponent]

你可以

export const routing = RouterModule.forRoot(appRoutes);

既然您 app.module.ts 已经从各自的模块中了解了 ProjectManagerComponentDesignerComponent。剩下的就是教它去哪里找到它们。

在你的app.module.ts 里面你会有

// All the other imports import {routing} from './app.routes;' @NgModule({ imports:[routing, /*Other Modules*/], })

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2017-04-22
    • 2017-08-21
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多