Home Web Front-end Vue.js How to use Vue Router to implement multi-level routing nesting and matching?

How to use Vue Router to implement multi-level routing nesting and matching?

Jul 21, 2023 pm 10:00 PM
vue router multi-level routing Route nesting

How to use Vue Router to implement multi-level routing nesting and matching?

Vue Router is the official routing manager of Vue.js, which can help us implement routing functions in single-page applications (SPA). In Vue Router, we can define various routing rules by configuring the routing table and implement route jumping and matching. In this article, we will focus on how to use Vue Router to implement multi-level route nesting and matching.

  1. Install Vue Router

First, we need to install Vue Router in the project. You can use npm or yarn command to install Vue Router.

npm install vue-router
Copy after login

or

yarn add vue-router
Copy after login
  1. Create routing instance

In the Vue project, we need to create a routing instance and connect it with the root instance of Vue Relate. Before creating a routing instance, we first need to create a routing table to define various routing rules. The routing table is an array composed of routing configuration objects. Each routing configuration object contains the routing path and corresponding components.

Assume that our project has the following multi-level routing nested structure:

- Home
  - About
    - Contact
  - News
    - Detail
Copy after login

We can define the following routing rules in the routing table:

import Vue from 'vue'
import VueRouter from 'vue-router'

import Home from '@/components/Home.vue'
import About from '@/components/About.vue'
import Contact from '@/components/Contact.vue'
import News from '@/components/News.vue'
import Detail from '@/components/Detail.vue'

Vue.use(VueRouter)

const routes = [
  {
    path: '/',
    name: 'Home',
    component: Home
  },
  {
    path: '/about',
    name: 'About',
    component: About,
    children: [
      {
        path: 'contact',
        name: 'Contact',
        component: Contact
      }
    ]
  },
  {
    path: '/news',
    name: 'News',
    component: News,
    children: [
      {
        path: 'detail',
        name: 'Detail',
        component: Detail
      }
    ]
  }
]

const router = new VueRouter({
  mode: 'history',
  routes
})

export default router
Copy after login

In the above routing table , we have defined the following routing rules: The component corresponding to the

  • / path is the Home.vue
  • /about path The corresponding component is About.vue
  • /about/contactThe component corresponding to the path is Contact.vue
  • /newsThe component corresponding to the path is News.vue
  • /news/detailThe component corresponding to the path is Detail.vue
  1. Configuration root component

In our Vue root instance, we need to associate the routing instance we created with the root instance of Vue and render our routing component to the Vue root instance <router-view> in the label.

import Vue from 'vue'
import App from './App.vue'
import router from './router'

Vue.config.productionTip = false

new Vue({
  router,
  render: h => h(App),
}).$mount('#app')
Copy after login

In the above code, we inject the routing instance we created into the Vue root instance through the router option, and mount the Vue root instance through the $mount('#app') method Mount to the DOM node with ID app.

  1. Use <router-link> and <router-view> components

in our Vue component , we can use the <router-link> component to jump between routes, and use the <router-view> component to render the corresponding routing component.

<template>
  <div>
    <router-link to="/">Home</router-link>
    <router-link to="/about">About</router-link>
    <router-link to="/about/contact">Contact</router-link>
    <router-link to="/news">News</router-link>
    <router-link to="/news/detail">Detail</router-link>
    <hr>
    <router-view></router-view>
  </div>
</template>

<script>
export default {
  name: 'App'
}
</script>
Copy after login

In the above code, we define multiple routing jump links through the <router-link> component to jump to the corresponding path respectively. In the <router-view> tag, we use Vue Router to dynamically render the corresponding routing component.

Using the above steps, we can implement multi-level routing nesting and matching in the Vue project. When we click on different routing links, the page will render the corresponding routing components to achieve dynamic switching and nesting of the page.

Summary

This article introduces how to use Vue Router to implement multi-level routing nesting and matching. By creating a routing table and associating routing instances in the Vue root instance, we can define multi-level routing rules in the Vue project and implement jumps and matching between routes. At the same time, we also introduced how to use the <router-link> and <router-view> components in Vue components to implement the rendering of routing links and routing components. I hope this article will be helpful to you when using Vue Router to implement multi-level routing nesting and matching.

Reference

  • Vue Router official documentation: https://router.vuejs.org/

The above is the detailed content of How to use Vue Router to implement multi-level routing nesting and matching?. For more information, please follow other related articles on the PHP Chinese website!

Statement of this Website
The content of this article is voluntarily contributed by netizens, and the copyright belongs to the original author. This site does not assume corresponding legal responsibility. If you find any content suspected of plagiarism or infringement, please contact admin@php.cn

Hot AI Tools

Undresser.AI Undress

Undresser.AI Undress

AI-powered app for creating realistic nude photos

AI Clothes Remover

AI Clothes Remover

Online AI tool for removing clothes from photos.

Undress AI Tool

Undress AI Tool

Undress images for free

Clothoff.io

Clothoff.io

AI clothes remover

AI Hentai Generator

AI Hentai Generator

Generate AI Hentai for free.

Hot Article

R.E.P.O. Energy Crystals Explained and What They Do (Yellow Crystal)
4 weeks ago By 尊渡假赌尊渡假赌尊渡假赌
R.E.P.O. Best Graphic Settings
4 weeks ago By 尊渡假赌尊渡假赌尊渡假赌
R.E.P.O. How to Fix Audio if You Can't Hear Anyone
4 weeks ago By 尊渡假赌尊渡假赌尊渡假赌
WWE 2K25: How To Unlock Everything In MyRise
1 months ago By 尊渡假赌尊渡假赌尊渡假赌

Hot Tools

Notepad++7.3.1

Notepad++7.3.1

Easy-to-use and free code editor

SublimeText3 Chinese version

SublimeText3 Chinese version

Chinese version, very easy to use

Zend Studio 13.0.1

Zend Studio 13.0.1

Powerful PHP integrated development environment

Dreamweaver CS6

Dreamweaver CS6

Visual web development tools

SublimeText3 Mac version

SublimeText3 Mac version

God-level code editing software (SublimeText3)

How to select the routing mode in Vue Router? How to select the routing mode in Vue Router? Jul 21, 2023 am 11:43 AM

VueRouter is the routing manager officially provided by Vue.js. It can help us implement page navigation and routing functions in Vue applications. When using VueRouter, we can choose different routing modes according to actual needs. VueRouter provides three routing modes, namely hash mode, history mode and abstract mode. The following will introduce in detail the characteristics of these three routing modes and how to choose the appropriate routing mode. Hash mode (default

How to use Vue Router for routing jump in uniapp How to use Vue Router for routing jump in uniapp Oct 18, 2023 am 08:52 AM

How to use VueRouter for routing jumps in uniapp Using VueRouter for routing jumps in uniapp is a very common operation. This article will introduce in detail how to use VueRouter in the uniapp project and provide specific code examples. 1. Install VueRouter Before using VueRouter, we need to install it first. Open the command line, enter the root directory of the uniapp project, and then execute the following command to install

How to use named routes in Vue Router? How to use named routes in Vue Router? Jul 23, 2023 pm 05:49 PM

How to use named routes in VueRouter? In Vue.js, VueRouter is an officially provided routing manager that can be used to build single-page applications. VueRouter allows developers to define routes and map them to specific components to control jumps and navigation between pages. Named routing is one of the very useful features. It allows us to specify a name in the routing definition, and then jump to the corresponding route through the name, making the routing jump more convenient.

How to use Vue Router to achieve transition effect when switching routes? How to use Vue Router to achieve transition effect when switching routes? Jul 21, 2023 pm 06:55 PM

How to use VueRouter to achieve transition effect when routing switching? Introduction: VueRouter is a routing management library officially recommended by Vue.js for building SPA (SinglePageApplication). It can achieve switching between pages by managing the correspondence between URL routing and components. In actual development, in order to improve user experience or meet design needs, we often use transition effects to add dynamics and beauty to page switching. This article will introduce how to use

Combination of Vue Router redirection function and route guard Combination of Vue Router redirection function and route guard Sep 15, 2023 pm 12:48 PM

VueRouter is the official routing manager for Vue.js. It allows us to build single page applications (SPA) by defining routes, creating nested routes, and adding route guards. In VueRouter, the combination of redirection function and route guard can achieve more flexible routing control and user navigation. The redirection function allows us to redirect users to another specified path when they access one specified path. This is useful when handling user input errors or unifying routing jumps. For example, when

How is nested routing implemented in Vue Router? How is nested routing implemented in Vue Router? Jul 22, 2023 am 10:31 AM

How is nested routing implemented in VueRouter? Vue.js is a popular JavaScript framework for building user interfaces. VueRouter is an official plug-in for Vue.js, used to build a routing system for single-page applications. VueRouter provides a simple and flexible way to manage navigation between different pages and components of your application. Nested routing is a very useful feature in VueRouter, which can easily handle complex page structures.

Performance optimization tips for Vue Router redirection function Performance optimization tips for Vue Router redirection function Sep 15, 2023 am 08:33 AM

Performance optimization tips for VueRouter redirection function Introduction: VueRouter is the official routing manager of Vue.js. It allows developers to build single-page applications and display different components according to different URLs. VueRouter also provides a redirection function, which can redirect pages to specified URLs according to certain rules. Optimizing the performance of the redirect function is an important consideration when using VueRouter for route management. This article will introduce

How to use Vue Router to implement dynamic routing tabs? How to use Vue Router to implement dynamic routing tabs? Jul 22, 2023 am 08:33 AM

How to use VueRouter to implement dynamic routing tabs? VueRouter is the officially recommended routing management plug-in for Vue.js. It provides a simple and flexible way to manage application routing. In our projects, sometimes we need to implement the function of switching multiple pages in the same window, just like tabs in a browser. This article will introduce how to use VueRouter to implement such a dynamic routing tab. First, we need to install VueRouter

See all articles