Detailed explanation of Vue router routing guard

Detailed explanation of Vue router routing guard

1. Global beforeEach

When the name stored in Local Storage is zhangsan, the message content will be displayed only when the message is clicked

1. Global beforeEach

Add a routing guard to the router beforeEach

grammar:

router.beforeEach((to, from, next)=>{})

Function: Call the function in beforeEach during initialization and before each route switch

parameter:

1.to: target route

2.from: the route before the jump

3.next: release

2. Implementation

2. Requirement 2

If there are many paths that need to be judged before jumping, you need to write a lot of judgment code, and the judgment structure will be very complicated.

At this time, you can put a meta tag in the route that needs to be judged.

The meta tag provides metadata about the HTML document (metadata refers to data used to describe data)

At this time, you can use the tag field in meta to make a judgment

3. Global post-guard afterEach

The usage of afterEach and beforeEach is basically the same.

The difference is that afterEach does not have the next parameter

1. Change the title to your own title

Assign each route its own title name

const router = new VueRouter({
  routes: [
    {
      name: 'home',
      path: '/home',
      component: Home,
      meta: {
        title: "Home"
      },
      children: [ 
        {
          name: "xiaoxi",
          path: 'message',
          component: Message,
          meta: {
            title: "News"
          },
          children: [
            {
              name: 'xiangqing',
              path: 'detail',
              component: Detail,
              meta: {
                isAuth: true,
                title: "Message Details"
              }
            }
          ]
        }
      ]
    },
    {
      path: '/about',
      component: About,
      meta: {
        title: "About"
      }
    }
  ]
})

Modify the title name in beforeEach

router.afterEach((to, from) => {
  document.title = to.meta.title || "Test"
})

4. Guarding within components

1. beforeRouteEnter

Called when entering this component through routing rules

2. beforeRouteLeave

Called when leaving the component through routing rules

Summarize

This article ends here. I hope it can be helpful to you. I also hope you can pay more attention to more content on 123WORDPRESS.COM!

You may also be interested in:
  • Specific use of routing guards in Vue
  • Vue2.0 implements navigation guard (route guard)
  • Detailed explanation of Vue's hook functions (route navigation guards, keep-alive, life cycle hooks)
  • Detailed explanation of Vue's routing guard and keep-alive life cycle

<<:  How to stop CSS animation midway and maintain the posture

>>:  A Guide to Optimizing High-Performance Websites

Recommend

Introduction to TypeScript basic types

Table of contents 1. Basic types 2. Object Type 2...

Seven solutions for classic distributed transactions between MySQL and Golan

Table of contents 1. Basic theory 1.1 Transaction...

How to use JS to implement waterfall layout of web pages

Table of contents Preface: What is waterfall layo...

JS asynchronous code unit testing magic Promise

Table of contents Preface Promise chaining MDN Er...

MySQL uses limit to implement paging example method

1. Basic implementation of limit In general, the ...

Nginx cache files and dynamic files automatic balancing configuration script

nginx Nginx (engine x) is a high-performance HTTP...

Docker container from entry to obsession (recommended)

1. What is Docker? Everyone knows about virtual m...

Implementation of WeChat applet message push in Nodejs

Select or create a subscription message template ...

Detailed explanation of Javascript Echarts air quality map effect

We need to first combine the air quality data wit...

Detailed explanation of using Vue custom tree control

This article shares with you how to use the Vue c...

Example of how to implement embedded table with vue+elementUI

During my internship in my senior year, I encount...

Solution to high CPU usage of Tomcat process

Table of contents Case Context switching overhead...