在Angular @NgModule初始化中,导入和导出的目的是什么?

50 浏览
0 Comments

在Angular @NgModule初始化中,导入和导出的目的是什么?

我正在阅读Angular的“英雄之旅”教程,刚刚到达了路由部分。我对他们为什么要这样做感到困惑:

app-routing.module.ts文件:

@NgModule({
    //导出routermodule使得router指令对AppModule组件可用
    //这使用routes初始化routermodule,因此可通过导入使用
    exports : [RouterModule],
    imports : [RouterModule.forRoot(routes)]
})

导出到底有什么作用?我注意到如果我没有创建这个模块并在“app.module.ts”文件中完成所有操作,我只需要将RouterModule.forRoot(routes)添加到导入中即可。甚至不需要导入RouterModule。

我不明白的是,如果app.module.ts将导入app-routing.module.ts文件,该文件将导入RouterModule.forRoot(routes),为什么模块仍然需要导出RouterModule?难道RouterModule.forRoot(routes)不提供指令吗?

抱歉这可能有点困惑,但我无法理解导出的重要性。

0