Maison  >  Article  >  interface Web  >  Implémentation de Navigation Guard sous le routage global vue.js

Implémentation de Navigation Guard sous le routage global vue.js

不言
不言original
2018-08-23 16:35:111943parcourir

Le contenu de cet article concerne la mise en œuvre des gardes de navigation sous le routage global vue.js. Il a une certaine valeur de référence. Les amis dans le besoin peuvent s'y référer.

Qu'est-ce qu'un garde de navigation ?

En termes généraux, les gardes de navigation sont des contrôleurs qui contrôlent quels itinéraires les utilisateurs peuvent emprunter et quels itinéraires ils ne peuvent pas emprunter, c'est-à-dire qu'ils gèrent le routage

Par exemple, lorsque vous entrez pour la première fois sur le site Web, Lorsque vous souhaitez écrire un blog, vous devez d'abord vous connecter avant de pouvoir accéder à l'écriture du blog ; l'interface de connexion est comme un itinéraire que vous pouvez saisir, et le blog est un itinéraire que vous ne pouvez pas saisir une fois connecté. Le contrôleur vous donnera la permission d'entrer dans le blog Routage, c'est le but de Navigation Guard

Le routage global doit être créé sous le fichier main.js

Si vous souhaitez utiliser Navigation GuardVous devez d'abord avoir un itinéraire

//main.js
const router= new VueRouter({
  routes:[
    {path:'/',name:'home',component:Home},
    {path:'/menu',name:'menu',component:Menu},
    {path:'/admin',name:'admin',component:Admin},
    {path:'/about',name:'about',component:About,redirect: {name:'contactLink'},children:[   //二级路由
        {path:'/about/contact',name:'contactLink',component:Contact},
        {path:'/history',name:'historyLink',component:History},
        {path:'/delivery',name:'deliveryLink',component:Delivery},
        {path:'/orderingGuide',name:'orderingGuideLink',component:OrderingGuide,redirect:{name:'phonelink'},children: [  //三级路由
            {path:'/phone',name:'phonelink',component:Phone},
            {path:'/name',name:'namelink',component:Name}
          ]},
      ]},
    {path:'/login',name:'login',component:Login},
    {path:'/register',name:'register',component:Register},
    {path:'*',redirect:'/'}
  ],
  mode:"history"
});

Utilisez la méthode beforeEach() du routeur d'objet de routage ci-dessus pour implémenter la garde de navigation

//main.js
//to:跳转到的路由 from:从哪个路由离开  next:显示函数
router.beforeEach((to,from,next)=>{     
  if(to.path == '/login' || to.path == '/register'){
    next();
  }else{
    alert("请先登录");
    next('/login');
  }
});

'/login' '/register' pour définir vous-même l'itinéraire. L'adresse

to.path est l'adresse de routage vers laquelle accéder

next() est. pour afficher le contenu de l'itinéraire actuel.

suivant('/login') passe à l'itinéraire spécifié et affiche le contenu de l'itinéraire spécifié

aux informations disponibles pour l'objet (console.log( à) voir)

Recommandations associées :

Comment utiliser le guidenavigationgardegarde de VueRouter

VueRoad redirigé dynamiquement par et NavigationNavigationGardeGarde

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Déclaration:
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn