如果routerLink相同,是否支持角度重新加载页面

时间:2018-10-22 05:53:32

标签: angular

我知道angular是SPA,但我只是想知道,如果routerlink不变,是否可以重新加载页面。 例如,我有一个带有“仪表板”按钮的侧面菜单导航栏,可导航到仪表板视图

[routerLink]="['/merchant/', {outlets: {'page': ['Dashboard']}}]"

在我导航至“仪表板”之后,“仪表板”按钮不可单击,是否有什么方法可以重新单击此仪表板按钮?

我要这样做的原因是在仪表板组件上,我有一个主视图,即仪表板,其中包含少量md卡。通过单击每个md卡,我将执行* ngIf仅显示此卡的完整详细信息。我确实有一个goBack()按钮可以返回到仪表板视图。

但是我也想单击侧面菜单中的仪表板按钮以导航回到仪表板页面。

感谢您的帮助。

1 个答案:

答案 0 :(得分:3)

尝试使用以下代码段。这可能会对您有所帮助。

this._router.routeReuseStrategy.shouldReuseRoute = function(){
    return false;
};

this._router.events.subscribe((evt) => {
    if (evt instanceof NavigationEnd) {
        this._router.navigated = false;
        window.scrollTo(0, 0);
    }
});

用于路由重用策略的API链接:https://angular.io/api/router/RouteReuseStrategy

参考:How to reload the current route with the angular 2 router