vue-router 4使用实例详解

下面是“vue-router 4使用实例详解”的完整攻略。

一、前置知识:

  • Vue.js框架的基础使用,Vue组件、生命周期等基础知识。
  • Vue-Router的基础使用方法,可以参考Vue-Router官网
  • 对ES6的基础了解。

二、vue-router 4使用实例

1. 安装 vue-router

使用npm安装Vue Router:

npm install vue-router@next --save

2. 创建Vue Router实例

import { createRouter, createWebHistory } from "vue-router";
import Home from "./views/Home.vue";
import About from "./views/About.vue";

const routes = [
  { path: "/", component: Home },
  { path: "/about", component: About },
];

const router = createRouter({
  history: createWebHistory(),
  routes,
});

export default router;

这里通过createRouter API 来创建Vue Router实例。

传递的参数说明:

  • history:用于指定路由模式,默认为 mode: 'hash'
  • routes:用于配置路由表,数组内每一项都会映射一个路由。

3. 在Vue应用中使用Vue Router

import { createApp } from "vue";
import App from "./App.vue";
import router from "./router";

const app = createApp(App);

app.use(router);
app.mount("#app");

在使用Vue应用的地方,先创建Vue实例,然后通过 app.use()router实例传入到Vue实例中。

4. 定义路由

const routes = [
  { path: "/", component: Home },
  { path: "/about", component: About },
];

通过routes数组定义路由:

  • path:路由路径,例如 /about
  • component:对应的组件。

5. 使用<router-link>组件

<!-- 这里是 App.vue -->
<template>
  <div>
    <nav>
      <router-link to="/">Home</router-link>
      <router-link to="/about">About</router-link>
    </nav>
    <router-view></router-view>
  </div>
</template>

<router-link>用于声明导航链接,当点击它时会自动调用Vue Router实例对象的push()方法导航到对应URL。

6. 使用<router-view>组件

<!-- 这里是 App.vue -->
<template>
  <div>
    <nav>
      <router-link to="/">Home</router-link>
      <router-link to="/about">About</router-link>
    </nav>
    <router-view></router-view>
  </div>
</template>

<router-view>用于渲染当前路由的组件内容。

至此,一个简单的Vue Router实例就创建完成了。

7. 路由传参

<!-- 这里是 Home.vue -->
<template>
  <div>
    <h2>Home</h2>
    <div>{{ message }}</div>
    <!-- 通过props的方式传递参数 -->
    <router-link :to="{ name: 'about', params: { name: 'Jack' } }">
      Go to about page
    </router-link>
  </div>
</template>

<script>
export default {
  name: "Home",
  props: ["message"], // 通过props接收参数
};
</script>

在Home组件中,通过<router-link>把参数传递到about组件。

const routes = [
  {
    path: "/about/:name", // 在路径中定义参数name
    name: "about", // 这里必须定义name
    component: About,
  },
];

在路由表中,定义了路径带有参数name,可以通过props字段来接收参数并传递给About组件。

const About = {
  name: "About",
  props: ["name"], // 通过props接收参数
  template: `<div><h2>About {{ name }}</h2></div>`,
};

在组件中通过props接收参数。

以上就是Vue Router 4的使用实例,掌握这些知识可以非常简单地实现路由功能,可以应用于Vue.js开发的任何项目中。

本站文章如无特殊说明,均为本站原创,如若转载,请注明出处:vue-router 4使用实例详解 - Python技术站

(0)
上一篇 2023年5月28日
下一篇 2023年5月28日

相关文章

  • 详解React中的不可变值

    详解React中的不可变值 在使用React进行开发时,不可变值是一个非常重要的概念。在不可变值的约束下,我们可以在React组件的生命周期中避免出现直接修改state的情况。这不仅可以减少错误,而且还可以实现更好的性能。 不可变值的定义 所谓不可变值,指的是一旦被创建,就不能再被修改的值。在JavaScript中,可以通过以下几种方式创建不可变值: 字符串…

    Vue 2023年5月27日
    00
  • 在vue项目实现一个ctrl+f的搜索功能

    下面是实现“在Vue项目实现一个Ctrl+F的搜索功能”的攻略。 一、需求分析 在Vue项目中实现Ctrl+F搜索功能的主要目的是让用户快速找到需要查看的内容,提高用户体验。在实现过程中需要考虑以下几个因素: 功能实现方式:Ctrl+F搜索功能的实现方式有多种,例如使用原生JavaScript实现、使用Vue指令或组件实现等,我们需要选择合适自己项目的方式。…

    Vue 2023年5月28日
    00
  • Vue中如何判断对象是否为空

    在Vue中,我们可以使用JavaScript原生的方式来判断对象是否为空。下面是两个示例说明: 示例一:使用Object.keys()方法 Vue中的组件数据通常都是一个对象,我们可以使用Object.keys()方法来获取对象的所有属性名数组,并通过判断这个数组的长度是否为0来判断对象是否为空。 if(Object.keys(obj).length ===…

    Vue 2023年5月28日
    00
  • 浅谈Vue.use的使用

    以下是关于“浅谈Vue.use的使用”的完整攻略。 什么是Vue.use Vue.use()是一个Vue.js插件安装API,它是用来安装将要使用的插件。Vue插件通常是一个通过Vue.extend()方法来创建全局组件或者添加全局功能的JavaScript对象。 如何使用Vue.use 使用Vue.use方法需要两个步骤: 首先,将Vue.use导入到你的…

    Vue 2023年5月27日
    00
  • vue 扩展现有组件的操作

    扩展 Vue 组件是指在已有的组件基础上进行自定义修改,以适应不同的业务需求。下面我将分享我们常用的几种扩展组件的方法。 1. 使用 mixins Mixins 是 Vue 中的一个实用工具,用于复用 Vue 组件中的一些常用逻辑。使用 mixins 可以将一些重复的代码抽离到单独的文件中,再通过导入和混入的方式来扩展组件。 使用 mixins 可以扩展已有…

    Vue 2023年5月28日
    00
  • 详解Vue 如何监听Array的变化

    当使用 Vue.js 来开发 web 应用时,你会经常遇到需要变更数组中的元素的情况。为了自动更新视图,需要监听数组的变化并重新渲染相关的内容。这里就来详解一下 Vue 如何监听数组变化。 在 Vue2.0 之前,Vue 提供的是一个 $watch 函数来监听数组的变化。但是它有一些局限,他只能监听到数组的拷贝,在数组变化时也会得到通知,但无法监听到数组中元…

    Vue 2023年5月29日
    00
  • Vue中splice()方法对数组进行增删改等操作的实现

    在Vue中,我们可以使用数组的splice()方法对数组进行增删改等操作。splice()方法可以对数组进行任意位置的添加、删除、修改等操作,具体的使用方法如下: array.splice(index, howMany, [element1][, …, elementN]) 参数解释: index:必选参数,规定要添加/删除/修改的元素的位置。 howM…

    Vue 2023年5月28日
    00
  • vue动态绑定class的几种常用方式小结

    Vue动态绑定class的几种常用方式小结 在Vue中如何动态绑定class是一个常见问题,本篇文章将总结几种常用的方式,包括对象语法、数组语法、计算属性以及使用第三方插件来实现。同时提供具体的示例代码帮助理解。 对象语法 对象语法是动态绑定class的最常见方式之一。在Vue中可以直接使用v-bind:class指令,并在该指令对应的值中使用对象语法,如下…

    Vue 2023年5月28日
    00
合作推广
合作推广
分享本页
返回顶部