使用路由器模块使用的Forchild和Forroot使用



我对 forroot child and forchild 行为有点混淆,在使用routermodule时。

如果我在路由模块内使用routermodule.forchild(路由),然后在 app.module.ts 中导入相同>内部 app.component.ts ,它会引发错误。

根据定义:

forChild创建一个包含所有指令和给定路线的模块,但不包括路由器服务。

路由器服务适用于浏览器位置检测,但是为什么它无法找到路由器输出指令,因为定义清楚地说它将包含所有指令。

但是,如果在功能模块中完成了同样的事情,则可以正常工作。

很抱歉不发布代码,因为它会很长。

RouterModule.forRoot()需要在AppModule中存在。它是实例化路由器服务的一种。所有其他模块都将使用RouterModule.forChild([])来处理路由。

您应该在应用程序中只有一个forRoot使用。

检查路由器源代码。

forChild登记路线,而 forRoot登记路由和配置/初始化路由器本身

最新更新