Angular懒加载再次加载相同路由
创始人
2024-10-27 22:01:13
0

要解决Angular懒加载再次加载相同路由的问题,可以使用以下方法:

  1. 使用路由重定向:在路由配置中,为相同路由路径创建一个重定向路由。当相同路由被访问时,先导航到重定向路由,然后再次导航到相同路由。这样可以强制重新加载组件。
const routes: Routes = [
  { path: 'component', redirectTo: 'component/reload' },
  { path: 'component/reload', component: Component }
];
  1. 使用特殊参数:在相同路由路径中添加一个特殊的查询参数,每次导航时都将该参数设置为不同的值。这样可以触发路由参数的变化,强制重新加载组件。
const routes: Routes = [
  { path: 'component', component: Component }
];

在组件中,可以使用ActivatedRoute服务来订阅参数变化,并在参数变化时执行相应的操作。

import { ActivatedRoute, Router } from '@angular/router';

constructor(private route: ActivatedRoute, private router: Router) {
  this.route.queryParams.subscribe(params => {
    if (params.reload) {
      // 执行重新加载组件的操作
      this.router.routeReuseStrategy.shouldReuseRoute = () => false;
      this.router.navigateByUrl('/component');
    }
  });
}

这样,每当导航到相同路由并带有reload=true的查询参数时,组件将被重新加载。

请注意,以上方法仅适用于懒加载的路由模块。如果要在非懒加载的模块中重新加载相同路由,可以使用相同的方法,但需要在RouterModule.forRoot方法中设置onSameUrlNavigation为'reload'。

@NgModule({
  imports: [RouterModule.forRoot(routes, { onSameUrlNavigation: 'reload' })],
  exports: [RouterModule]
})
export class AppRoutingModule { }

相关内容

热门资讯

举措辅助"越乡游义乌... 举措辅助"越乡游义乌辅助工具"开挂(插件)辅助插件(有人有挂);无需打开直接搜索薇:13670430...
透视线上!小程序跑得快的技巧,... 透视线上!小程序跑得快的技巧,aapoker脚本怎么用(透视)开挂辅助软件技巧教程;无需打开直接搜索...
一向有辅助"来玩德州... >>您好:来玩德州破解器确实是有挂的,很多玩家在这款来玩德州破解器游戏中打牌都会发现很多用户的牌特别...
透视规律!佛手在线大菠萝技巧,... 透视规律!佛手在线大菠萝技巧,新九天辅助(透视)开挂辅助器详细教程;打开点击测试直接进入微信(136...
指南开挂"大咖娱乐破... 指南开挂"大咖娱乐破解器"开挂(辅助挂)辅助软件(有挂方式);无需打开直接搜索加薇136704302...
原先有开挂"soho... 原先有开挂"sohoo辅助"开挂(透视)辅助插件(wepoke教程有挂技巧);亲,sohoo辅助这款...
窍门辅助"蜀山四川辅... 窍门辅助"蜀山四川辅助脚本多少钱"开挂(脚本)辅助安装(有挂分享)>>您好:软件加136704302...
透视美元局!欢乐茶馆脚本辅助,... 透视美元局!欢乐茶馆脚本辅助,新西部大厅辅助(透视)开挂辅助下载AI教程;无需打开直接搜索薇:136...
本来有开挂"菜鸟黑桃... 本来有开挂"菜鸟黑桃a3辅助"开挂(透视)辅助下载(AI教程有挂教学)>>您好:软件加1367043...
步骤辅助"水鱼辅助软... 步骤辅助"水鱼辅助软件下载"开挂(辅助挂)辅助神器(真的有挂);无需打开直接搜索打开薇:136704...