首先让我们回顾一下导航守卫。
官网:正如其名,vue-router
提供的导航守卫主要用来通过跳转或取消的方式守卫导航。有多种机会植入路由导航过程中:全局的, 单个路由独享的, 或者组件级的。官方文档
简单来说:导航守卫就是一个房子的保安,如果想要进入房子,要告诉保安从哪里来(from),到哪里去(to),如果你是陌生人,那保安不能随便放你进去,你要得到房子主人的允许(登录,注册),才可以去你要去的地方,然后保安告诉你接下来怎么做(next())。如果房子主人允许你进入,那你就可以直接进去。
那接下来看看我们要实现的效果:
当我们点击商品列表的作者时,会跳到作者详情页,但是此时用户没有登录,所以会直接跳到登录页面。当我们点击图片时,会进入商品详情页,此时用户可以不用登录,这个情况下,有些路由需要登录,有的不需要