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 { }

相关内容

热门资讯

黑科技挂(aa扑克辅助)外挂透... 黑科技挂(aa扑克辅助)外挂透视辅助神器(透视)竟然有挂(黑科技规律)1)aa扑克辅助辅助挂:进一步...
黑科技中牌率(德州之星有透视挂... 黑科技中牌率(德州之星有透视挂吗)外挂透视辅助app(透视)原来真的是有挂(黑科技详情)1、德州之星...
黑科技代打(wepoke透明挂... 黑科技代打(wepoke透明挂怎么识别)外挂黑科技辅助助手(透视)一贯是真的有挂(黑科技黑科技);1...
黑科技讲解(德州之星可能有外挂... 黑科技讲解(德州之星可能有外挂吗)外挂黑科技辅助技巧(透视)确实真的有挂(黑科技解说);德州之星可能...
黑科技好友房(红龙扑克辅助工具... 黑科技好友房(红龙扑克辅助工具)外挂透视辅助安装(透视)切实真的有挂(黑科技介绍);一、红龙扑克辅助...
黑科技规律(wepoke有插件... 黑科技规律(wepoke有插件吗)外挂透明挂辅助器(透视)竟然是有挂(黑科技工具)1、wepoke有...
黑科技辅助挂(智星德州菠萝外挂... 黑科技辅助挂(智星德州菠萝外挂)外挂透视辅助技巧(透视)好像是真的有挂(黑科技插件)所有人都在同一条...
黑科技辅助(微扑克如何让系统发... 黑科技辅助(微扑克如何让系统发好牌)外挂透明挂辅助安装(透视)本来真的有挂(黑科技解密);1、微扑克...
黑科技有挂(微扑克透牌真假的)... 黑科技有挂(微扑克透牌真假的)外挂透明挂辅助教程(透视)竟然真的有挂(黑科技详情)1.微扑克透牌真假...
黑科技工具(德州之星透牌器是真... 黑科技工具(德州之星透牌器是真的吗)外挂黑科技辅助app(透视)好像存在有挂(黑科技工具)1)德州之...