自动从子组件重定向到父组件
Automatic redirection from child component to parent component
我目前遇到 angular 路由问题。
当我尝试访问使用延迟加载加载的组件的子路径时,该路径会在地址栏中出现一小段时间,然后立即重定向到父组件的路径。
例如,如果我想访问 localhost:4200/dummy/table,它会重定向到 localhost:4200/dummy,如果我尝试通过 [routerLink] 导航。
如果我直接在地址栏输入localhost:4200/dummy/table,它会正确加载模块并显示子组件。
稍微清理一下代码以简化示例,我的菜单看起来像这样
<ul>
<li *ngFor="let item of menu" [routerLink]="item.url">
{{ item.title }}
<ul>
<li *ngFor="let subItem of item.children" [routerLink]="[item.url, subItem.url]">
{{ subItem.title }}
</li>
</ul>
</li>
</ul>
如果你不介意的话,剩下的代码我把它作为图像
应用路由:
虚拟模块:
menu.json:
有人知道我会发生什么事吗?
根据 {enableTracing: true} 它进入路线但退出路线
是因为嵌套元素,父子都设置了routerLink
属性。我建议将父级包装在跨度或锚标记中以删除 routerLinks
的嵌套。下面提供了一个示例。
<ul>
<li *ngFor="let item of menu">
<span [routerLink]="item.url"> {{ item.title }} </span>
<ul>
<li *ngFor="let subItem of item.children" [routerLink]="[item.url, subItem.url]">
{{ subItem.title }}
</li>
</ul>
</li>
</ul>```
我目前遇到 angular 路由问题。
当我尝试访问使用延迟加载加载的组件的子路径时,该路径会在地址栏中出现一小段时间,然后立即重定向到父组件的路径。
例如,如果我想访问 localhost:4200/dummy/table,它会重定向到 localhost:4200/dummy,如果我尝试通过 [routerLink] 导航。
如果我直接在地址栏输入localhost:4200/dummy/table,它会正确加载模块并显示子组件。
稍微清理一下代码以简化示例,我的菜单看起来像这样
<ul>
<li *ngFor="let item of menu" [routerLink]="item.url">
{{ item.title }}
<ul>
<li *ngFor="let subItem of item.children" [routerLink]="[item.url, subItem.url]">
{{ subItem.title }}
</li>
</ul>
</li>
</ul>
如果你不介意的话,剩下的代码我把它作为图像
应用路由:
虚拟模块:
menu.json:
有人知道我会发生什么事吗?
根据 {enableTracing: true} 它进入路线但退出路线
是因为嵌套元素,父子都设置了routerLink
属性。我建议将父级包装在跨度或锚标记中以删除 routerLinks
的嵌套。下面提供了一个示例。
<ul>
<li *ngFor="let item of menu">
<span [routerLink]="item.url"> {{ item.title }} </span>
<ul>
<li *ngFor="let subItem of item.children" [routerLink]="[item.url, subItem.url]">
{{ subItem.title }}
</li>
</ul>
</li>
</ul>```