angular 页面原地跳转路由不刷新问题

  之前找了很久也没解决的方法,终于找了个方法处理了,可能不是最佳的方法,但是可以实现功能,而且看上去没啥问题。

  先说下应用场景,a页面是A页面的子路由,通过点击a中的链接进行原地跳转,发现此时a页面的数据没有刷新,上一个版本是采用了在路由中添加时间轴的方式达到刷新效果,在当时是有效的;

        this.router.navigate([url + new Date().getTime() + 'xxx'], {});

  不过在后来进行路由重构之后,使用了懒加载之后发现失效了,路由中的时间戳改变了,但是页面并没有变化,ngOnInit中的方法没有起作用,也就意味着页面没有进行重构,后来查找资料发现了可以先跳转到A路由,在跳转到a路由,实现效果和直接跳转到a是一样的。

            this.router.navigateByUrl(url).then(() => {

          this.router.navigate(url + new Date().getTime()], {});

        });

参考的文章链接

你可能感兴趣的:(angular 页面原地跳转路由不刷新问题)