Home > Web Front-end > Vue.js > How to implement front-end routing jump under Vue?

How to implement front-end routing jump under Vue?

王林
Release: 2023-06-27 08:21:22
Original
2165 people have browsed it

Vue is an excellent front-end framework. In application development, front-end routing jump is a very common requirement. Vue provides rich functions to implement routing jumps. This article will introduce Vue's built-in routing implementation and the use of the third-party routing library Vue-Router.

1. Vue’s built-in routing implementation method

In Vue, you can use the built-in vue-router to implement front-end routing jumps.

  1. Install vue-router

Use npm command to install vue-router library:

npm install vue-router
Copy after login
  1. Create Vue Router object

Create a Vue Router object in the Vue project main file (eg: main.js) and bind it to the Vue instance. As shown below:

import Vue from 'vue'
import VueRouter from 'vue-router'
Vue.use(VueRouter)
const router = new VueRouter({
  // 路由配置
})
new Vue({
  router
}).$mount('#app')
Copy after login

In the code, we first introduced vue-router and bound it to the Vue instance. Then a Vue Router object is created and placed in the Vue instance.

  1. Routing configuration

When creating a Vue Router object, you need to configure the routing. The configuration in Vue Router mainly includes routing paths, routing components, routing aliases, and any other parameters. The routing path corresponds to the path part in the URL, and the routing component defines the components to be displayed under the path.

For example, if we want to create a route for a page, we can write it like this when configuring the route:

const router = new VueRouter({
  routes: [
    {
      path: '/about',
      component: About
    }
  ]
})
Copy after login

Among them, the routing path is "/about" and the corresponding component is About.

  1. Route jump

With routing configuration, we can use Vue Router’s built-in route jump function. Vue Router provides the router-link tag and router.push method to implement route jumps.

1) Use the router-link tag

The router-link tag can be used in HTML templates to create a routing link. The router-link tag will automatically generate the correct URL based on the routing configuration.

For example:

<router-link to="/about">关于我们</router-link>
Copy after login

When you click on the About Us link, it will jump to the component page corresponding to the configured routing path "/about".

2) Use the router.push method

In addition to using the router-link tag, Vue Router also provides the router.push method to implement routing jumps.

For example:

this.$router.push('/about')
Copy after login

In the Vue component, we can use this.$router to obtain the Vue Router instance, and use the push method to implement the jump. This code will jump to the component page with the routing path "/about".

2. Vue-router

Vue-Router is an official router based on Vue.js. It is the routing manager officially released by Vue.js, which provides powerful functions, such as routing nesting, dynamic routing, lazy loading of routes, etc. Let's take a look at how to use Vue-Router to implement front-end routing jumps.

  1. Install Vue-Router

Before using Vue-Router, you need to install it into the project. We can install it using npm command.

npm install vue-router --save
Copy after login
  1. Create routing instance

When creating a Vue route, we can first configure the relevant routing information of the page components (including nested sub-components) that need to be jumped. into an array.

For example:

const routes = [
    {
        path: '/',
        component: Home
    },
    {
        path: '/about',
        component: About
    },
    {
        path: '/user/:id',
        component: User
    }
]
Copy after login

This array defines three routing information. The first routing information defines the default jump page as Home, and the second routing information defines the jump page as Home. About, the third routing information defines the jump page as User, and the routing information needs to pass the id parameter.

Next, we can create a routing instance through the createRouter method of Vue-Router.

For example:

import { createRouter, createWebHistory } from 'vue-router'
const router = createRouter({
    history: createWebHistory(),
    routes
})
Copy after login

In the code, we use the createRouter method of Vue-Router to create a routing instance and define the routing history management method and routing information. Among them, createWebHistory means using HTML5 History API for routing management.

  1. Register routing

After creating the routing instance, we need to register the routing instance into the Vue application instance.

For example:

import { createApp } from 'vue'
import App from './App.vue'
import { router } from './router'
createApp(App)
.use(router)
.mount('#app')
Copy after login

In the code, we register the routing instance into the Vue application instance through the use method of createApp.

In addition to registering routing instances, we can also implement routing jumps through the routing navigation component router-view and routing link component router-link provided by Vue-Router.

For example:

<router-link to="/">Home</router-link>
<router-link to="/about">About</router-link>
<router-link :to="{name: 'user', params: {id: userId}}">User</router-link>
<router-view></router-view>
Copy after login

In the code, we use the router-link tag to create three jump links, and use the router-view tag to display the corresponding content of the routing component. The third link needs to pass a dynamic parameter id.

  1. Route jump

Vue-Router provides a variety of ways to implement route jump, for example:

  • Use the router-link component ;
  • Use this.$router.push() method in Vue component;
  • Use this.$router.replace() method in Vue component;
  • In Use this.$router.go() method in Vue component;
  • Use this.$route.back() method in Vue component.

For example, use the router.push method in the Vue component to implement routing jump:

import { reactive } from 'vue'
export default {
    setup() {
        const state = reactive({
            userId: ''
        })
        const handleRoute = function() {
            router.push({
                name: 'user',
                params: { id: state.userId }
            })
        }
        return {
            state,
            handleRoute
        }
    }
}
Copy after login

In the code, we use reactive to create an object in the Vue component, and then in In the handleRoute method, use the router.push method to implement route jump. Among them, the name field corresponds to the router-link or the name attribute of the routing information, and params is an object that contains the dynamic parameters required for routing.

Conclusion

Vue-Router is a very powerful and easy-to-use routing manager. In a Vue application, Vue-Router can be used to easily implement route jumps and the parameter transfer required for route jumps. For developers, this makes writing single-page applications very simple and efficient.

The above is the detailed content of How to implement front-end routing jump under Vue?. For more information, please follow other related articles on the PHP Chinese website!

Related labels:
source:php.cn
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
Popular Tutorials
More>
Latest Downloads
More>
Web Effects
Website Source Code
Website Materials
Front End Template