vue中的路由导航守卫跳转

trade是订单页面pay是支付页面,红色框的部分如果不加,在pay页面刷新页面就会空白,而且在trade页面中的地址栏中输入就直接跳过来了。如果加了在任意页面的地址栏中输入都能跳过来,请问各位这个bug该如何处理啊

img

你是不是想判断来的页面路由是trade或者pay的才给放行进入,那你这里的逻辑就写错了,应该是

if (from.path == 'trade' || from.path == 'pay')

你上面那种写法实际是 (from.path == 'trade') || 'pay' 这个意思,不管前面的判断如何, || ‘pay’,这个肯定是true,结果就会是true,所以相当于路由守卫没用,谁都能进,刷新后也能到