vue router Navigation aborted from XXX to XXX via a navigation guard.

error

代码如下:

router.beforeEach((to, from, next) => {
    if (to.path === "/world_rank") {
        window.open('https://www.baidu.com/', '_blank');
        next(false);
    } else {
        /* 必须调用 `next` */
        next();
    }
})

其他方式,比如route.js 下补充代码,试了,无效果。

查了下[官网]:

next

如果全是通过route进行导航的,那么一定要调用next,进行后续的导航状态操作,比如 对$route的监听等。

上述代码中用next(false)是为了中断当前的导航,不需要进行后续操作。
那么,把 next(false)注掉是不是就可以了呢?
果然,注释掉了不报错了。因为是跳转到外网,并不需要路由操作。

总结

router 中如果有地址是跳转到外网,不需要路由进行后续操作的,不需要加 next方法。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值