相关疑难解决方法(0)

是否可以根据某些条件停止路由器导航

大家好我是角色新手,我想在用户点击刷新按钮后退按钮时根据某些条件停止路由.如果有人知道帮助我,我不知道这是否可行

constructor(private route: Router) {
    this.route.events
        .filter(event => event instanceof NavigationEnd)
        .pairwise().subscribe((event) => {
            if (expression === true){
                // stop routing 
            } else {
                // continue routing
            }      
        });
}
Run Code Online (Sandbox Code Playgroud)

是否有可能,如果是的话,我该怎么做?

提前致谢.

angular

27
推荐指数
2
解决办法
2万
查看次数

有条件地禁用Angular中的路由器链接

我在Angular项目中有很多链接(使用Angular 2),类似于:

<a [routerLink]="..."
     [routerLinkActive]="..."
     [routerLinkActiveOptions]="...">
    Link
</a>
Run Code Online (Sandbox Code Playgroud)

我想根据上下文/状态禁用其中一些(通过更改颜色并防止操作发生)。


对于样式,我添加了链接:

[class.disabled]="!isValidLink()"
Run Code Online (Sandbox Code Playgroud)

这使我可以将链接显示为禁用状态,但仍然需要阻止路由。如果将a添加target="_self"到元素,它将阻止路由,但是我需要根据某些状态有条件地执行此操作。

是否有任何受支持的路由方式来执行此操作,或者是否有其他可行的实现方式?


编辑:pointer-events在CSS中设置为none可以防止单击链接,但是我正在寻找一种解决方案来防止键盘事件也触发它。

router angular

0
推荐指数
2
解决办法
3446
查看次数

标签 统计

angular ×2

router ×1