【问题标题】:Angular which router outlet is used使用哪个路由器插座的角度
【发布时间】:2020-03-02 00:48:29
【问题描述】:

我是 Angular 的新手,我知道组件模板加载在路由器插座下方。但是,当有多个嵌套的子路由时,我真的很困惑。当有多个嵌套的子路由时,我真的很难快速确定将使用哪个路由器插座。知道将使用哪个路由器插座的“诀窍”是什么?我不应该理解什么?也许有一种组织方式,以便知道特定组件的加载位置不会那么混乱?

【问题讨论】:

    标签: angular


    【解决方案1】:

    每个router-outlet 都应该关联回父模块路由模块,例如

    如果我有一个app.routing.module.ts,那么这是由app.module.ts 导入的,这意味着app.module.ts 内任何组件中的任何router-outlets 都将与app.routing.module.ts 相关

    <router-outlet></router-outlet> <-- app.routing.module.ts
    

    现在在嵌套router-outlet的情况下

    在我的app.module.ts 中说我有一个user.module.ts,现在这个模块(user.module.ts)有独立的路由,它需要像user.routing.module.ts 这样导入一个路由模块,然后如果我放router-outlet 在user.module.ts 内的任何组件中,它将使用user.routing.module.ts 而不是app.routing.module.ts

    app.component.html
       <router-outlet></router-outlet> <-- app.routing.module.ts
           user.component.html
              <router-outlet></router-outlet> <-- user.routing.module.ts
    

    考虑它的最简单方法是,无论您的路由器插座在哪个模块中,您的 router-outlet 都与它相关。

    至于组织.. 你可以把 c​​mets 放在你的 router-outlet 旁边,让自己更轻松?

    <!-- app.router.module.ts -->
    <router-oulet></router-outlet> 
    

    【讨论】:

      猜你喜欢
      • 2019-10-23
      • 1970-01-01
      • 2018-03-07
      • 2023-04-01
      • 2017-04-29
      • 2021-11-07
      • 1970-01-01
      • 2021-03-13
      • 2017-02-15
      相关资源
      最近更新 更多