Router in Vue.js and the role of Vue Router?

Gathering sand into a tower, making a little progress every day

? Column introduction

Front-end Getting Started Tour: Exploring the Wonderful World of Web Development Welcome to the Front-End Getting Started Tour! If you are interested, you can subscribe to this column! This column is tailor-made for those who are interested in web development and have just entered the front-end field. Whether you are a complete novice or a developer with some basic knowledge, here will provide you with a systematic and friendly learning platform. In this column, we will update it every day in the form of questions and answers, presenting you with selected front-end knowledge points and answers to frequently asked questions. Through the Q&A format, we hope to respond more directly to readers’ questions about front-end technology and help everyone gradually establish a solid foundation. Whether it’s HTML, CSS, JavaScript, or various common frameworks and tools, we’ll explain concepts in a simple and easy-to-understand way, and provide practical examples and exercises to solidify what you’ve learned. At the same time, we will also share some practical tips and best practices to help you better understand and apply various technologies in front-end development.

Whether you are looking for a career change, upskilling or fulfilling personal interests, we are dedicated to providing you with the best learning resources and support. Let’s explore the wonderful world of web development together! Join the front-end entry journey and become an outstanding front-end developer! Let’s start our front-end journey! ! !

Today’s content: Routing (router) in Vue.js and the role of Vue Router?

Routing (Router) in Vue.js and the role of Vue Router

Overview

In Vue.js, routing is the mechanism used to manage page navigation and view switching. Vue Router is a routing management library officially provided by Vue.js. It allows developers to define front-end routing in a declarative manner to achieve page switching and navigation in single page applications (SPA).

Basic usage of Vue Router

  1. Install Vue Router:

    npm install vue-router
    
  2. Use Vue Router:

    // main.js
    import Vue from 'vue';
    import VueRouter from 'vue-router';
    import App from './App.vue';
    
    Vue.use(VueRouter);
    
    const routes = [
      {<!-- --> path: '/', component: Home },
      {<!-- --> path: '/about', component: About },
      {<!-- --> path: '/contact', component: Contact }
    ];
    
    const router = new VueRouter({<!-- -->
      routes
    });
    
    new Vue({<!-- -->
      el: '#app',
      router,
      render: h => h(App)
    });
    
  3. Define routing components:

    // Home.vue
    <template>
      <div>
        <h2>Home Page</h2>
      </div>
    </template>
    
    <script>
    export default {<!-- -->
      // component definition
    };
    </script>
    

    Define About.vue and Contact.vue in the same way.

  4. Use to display components:

    <!-- App.vue -->
    <template>
      <div id="app">
        <router-view></router-view>
      </div>
    </template>
    
    <script>
    export default {<!-- -->
      // component definition
    };
    </script>
    

The role of Vue Router

  1. Page navigation:

    Vue Router allows you to define different routes, each route corresponds to a component, and navigation between pages is achieved by switching routes.

  2. Nested routes:

    The nested structure of the page can be realized by nesting routes. Each route can have its own sub-routes and corresponding components.

  3. Route parameters:

    Vue Router supports defining parameters in routes, through which data can be dynamically passed to components.

    // Route definition
    {<!-- --> path: '/user/:id', component: User }
    
    // User.vue
    export default {<!-- -->
      props: ['id'],
      // component definition
    };
    
  4. Navigation Guard:

    Vue Router provides a navigation guard (Navigation Guards) mechanism to allow additional control during navigation.

    // Route guard
    router.beforeEach((to, from, next) => {<!-- -->
      // Verify whether the user is logged in and other logic
      next();
    });
    
  5. Status Management:

    Vue Router can be used in conjunction with state management libraries (such as Vuex) to implement more complex state management and ensure state consistency when routing is switched.

  6. HTML5 History mode:

    Vue Router supports the use of HTML5 History API. Through configuration, you can remove the # symbol in the URL to make the URL more beautiful.

const router = new VueRouter({<!-- -->
  mode: 'history',
  routes
});

Overall, Vue Router provides powerful routing management functions in Vue.js applications, making the development of single-page applications more flexible and maintainable. Through the combination of declarative routing configuration and components, Vue Router encourages developers to organize code in a modular manner, improving the readability and maintainability of applications.

? Write at the end

This column is suitable for a wide range of readers, and is suitable for front-end beginners; or those who have not learned front-end and are interested in front-end, or back-end students who want to better show themselves and expand some front-end knowledge points during the interview process, so If you have the basics of front-end and follow this column, it can also help you to a great extent to check for omissions and fill in the gaps. Since the blogger himself does the content output, if there are any flaws in the article, you can contact me through the left side of the homepage. , let’s make progress together, and at the same time, I also recommend several columns to everyone. Interested partners can subscribe: In addition to the columns below, you can also go to my homepage to see other columns;

Front-end games (free)This column will take you into a world full of creativity and fun, by using the basics of HTML, CSS and JavaScript Knowledge, we will build various interesting page games together. Whether you are a beginner or have some front-end development experience, this column is for you. We’ll start with the basics and walk you through the skills you need to build a page game. Through practical cases and exercises, you will learn how to use HTML to build page structure, use CSS to beautify the game interface, and use JavaScript to add interactive and dynamic effects to the game. In this column, we’ll cover various types of mini-games, including maze games, brick breaker, snake, minesweeper, calculators, plane battles, tic-tac-toe, puzzles, mazes, and more. Each project guides you through the building process in concise and clear steps, with detailed explanations and code examples. At the same time, we will also share some optimization tips and best practices to help you improve page performance and user experience. Whether you are looking for an interesting project to exercise your front-end skills, or are interested in page game development, the front-end games column will be your best choice. Click to subscribe to the front-end games column

Vue3 Transparency Tutorial [From Zero to One] (Paid) Welcome to Vue3 Transparency Tutorial! This column aims to provide everyone with comprehensive technical knowledge related to Vue3. If you have some Vue2 experience, this column can help you master the core concepts and usage of Vue3. We will start from scratch and guide you step by step to build a complete Vue application. Through practical cases and exercises, you will learn how to use Vue3’s template syntax, component development, state management, routing and other functions. We will also introduce some advanced features, such as Composition API and Teleport, to help you better understand and apply the new features of Vue3. In this column, we’ll guide you through each project in concise and clear steps, with detailed explanations and sample code. At the same time, we will also share some common problems and solutions in Vue3 development to help you overcome difficulties and improve development efficiency. Whether you want to learn Vue3 in depth or need a comprehensive guide to building a front-end project, the Vue3 thorough tutorial column will become an indispensable resource for you. Click to subscribe to the Vue3 Transparent Tutorial [From Zero to One] column

TypeScript Getting Started Guide (Free) is a column designed to help everyone get started quickly and master TypeScript related technologies. Through concise and clear language and rich sample code, we will explain in depth the basic concepts, syntax and features of TypeScript. Whether you are a beginner or an experienced developer, you can find a learning path that suits you here. From core features such as type annotations, interfaces, and classes to modular development, tool configuration, and integration with common front-end frameworks, we will comprehensively cover all aspects. By reading this column, you will be able to improve the reliability and maintainability of JavaScript code, and provide better code quality and development efficiency for your projects. Let’s embark on this exciting and challenging TypeScript journey together! Click to subscribe to the TypeScript Getting Started Guide column

Review of this article

  • ? Column introduction
  • Routing (Router) in Vue.js and the role of Vue Router
      • Overview
      • Basic usage of Vue Router
      • The role of Vue Router
  • ?Write at the end