广告
返回顶部
首页 > 资讯 > 前端开发 > JavaScript >Vuerouter配置与使用分析讲解
  • 525
分享到

Vuerouter配置与使用分析讲解

Vuerouter配置Vuerouter使用方法 2022-12-23 18:12:28 525人浏览 薄情痞子
摘要

目录说明一、安装及配置二、在html中使用HTMLrouter-linkrouter-view三、路由的基本使用四、动态路由的添加说明 本教程适用于vue3中的路由Vue-route

说明

  1. 教程适用于vue3中的路由Vue-router@4,的配置及使用
  2. 安装及配置
  3. 路由的基本使用
  4. 动态路由的添加
  5. 路由守卫
  6. 找不到路由配置(path: ‘/:pathMatch(.)’,)

一、安装及配置

安装

npm install vue-router@4

配置

//自己创建的router文件中
import { createRouter, createWEBHashHistory } from 'vue-router'
//createWebHashHistory 在访问的时候带有#
//createWebHistory 在访问的时候不带#
const router = createRouter({
  history: createWebHashHistory(),
  routes: [
    //...
  ],
})
export default router
//在main.js文件中
import router from 'router_path'
const app = createApp(App)
app.use(router)
app.mount('#app')

二、在html中使用

用 Vue + Vue Router 创建单页应用非常简单:通过 vue.js,我们已经用组件组成了我们的应用。当加入 Vue Router 时,我们需要做的就是将我们的组件映射到路由上,让 Vue Router 知道在哪里渲染它们。下面是一个基本的例子:

HTML

<script src="https://unpkg.com/vue@3"></script>
<script src="Https://unpkg.com/vue-router@4"></script>
<div id="app">
  <h1>Hello App!</h1>
  <p>
    <!--使用 router-link 组件进行导航 -->
    <!--通过传递 `to` 来指定链接 -->
    <!--`<router-link>` 将呈现一个带有正确 `href` 属性的 `<a>` 标签-->
    <router-link to="/">Go to Home</router-link>
    <router-link to="/about">Go to About</router-link>
  </p>
  <!-- 路由出口 -->
  <!-- 路由匹配到的组件将渲染在这里 -->
  <router-view></router-view>
</div>

router-link

请注意,我们没有使用常规的 a 标签,而是使用一个自定义组件 router-link 来创建链接。这使得 Vue Router 可以在不重新加载页面的情况下更改 URL,处理 URL 的生成以及编码。我们将在后面看到如何从这些功能中获益。

router-view

router-view 将显示与 url 对应的组件。你可以把它放在任何地方,以适应你的布局。

三、路由的基本使用

路由基本元素有name、path、component、meta(字典)几个要素

  • name路由名
  • path路由路径
  • component组件名(组件的路径及组件名)
  • meta路由元信息
import { createRouter, createWebHashHistory } from 'vue-router'
import Login from '@/views/Login.vue'
const router = createRouter({
  history: createWebHashHistory(),
  routes: [
    {
      path: '/',
      name: 'login',
      meta:{
        title:'登录',
      },
      component: Login
    },
})
export default router

带参数的路由匹配

很多时候,我们需要将给定匹配模式的路由映射到同一个组件。例如,我们可能有一个 User 组件,它应该对所有用户进行渲染,但用户 ID 不同。在 Vue Router 中,我们可以在路径中使用一个动态字段来实现,我们称之为 路径参数 :

const User = {
  template: '<div>User</div>',
}
// 这些都会传递给 `createRouter`
const routes = [
  // 动态字段以冒号开始
  { path: '/users/:id', component: User },
]

现在像 /users/johnny 和 /users/jolyne 这样的 URL 都会映射到同一个路由。

路径参数 用冒号 : 表示。当一个路由被匹配时,它的 params 的值将在每个组件中以 this.$route.params 的形式暴露出来。因此,我们可以通过更新 User 的模板来呈现当前的用户 ID:

const User = {
  template: '<div>User {{ $route.params.id }}</div>',
}

你可以在同一个路由中设置有多个 路径参数,它们会映射到 $route.params 上的相应字段。例如:

匹配模式匹配路径route.params
/users/:username/users/eduardo{ username: ‘eduardo’ }
/users/:username/posts/:postId/users/eduardo/posts/123{ username: ‘eduardo’, postId: ‘123’ }

除了 r o u t e . p a r a m s 之外, route.params 之外, route.params之外,route 对象还公开了其他有用的信息,如 r o u t e . q u e r y (如果 U R L 中存在参数)、 route.query(如果 URL 中存在参数)、 route.query(如果URL中存在参数)、route.hash 等。你可以在 api 参考中查看完整的细节。

四、动态路由的添加

路由守卫

找不到路由配置

常规参数只匹配 url 片段之间的字符,用 / 分隔。如果我们想匹配任意路径,我们可以使用自定义的 路径参数 正则表达式,在 路径参数 后面的括号中加入 正则表达式 :

const routes = [
  // 将匹配所有内容并将其放在 `$route.params.pathMatch` 下
  { path: '/:pathMatch(.*)*', name: 'NotFound', component: NotFound },
  // 将匹配以 `/user-` 开头的所有内容,并将其放在 `$route.params.afterUser` 下
  { path: '/user-:afterUser(.*)', component: UserGeneric },
]

在这个特定的场景中,我们在括号之间使用了自定义正则表达式,并将pathMatch 参数标记为可选可重复。这样做是为了让我们在需要的时候,可以通过将 path 拆分成一个数组,直接导航到路由:

this.$router.push({
  name: 'NotFound',
  // 保留当前路径并删除第一个字符,以避免目标 URL 以 `//` 开头。
  params: { pathMatch: this.$route.path.substring(1).split('/') },
  // 保留现有的查询和 hash 值,如果有的话
  query: this.$route.query,
  hash: this.$route.hash,
})

到此这篇关于Vue router配置与使用分析讲解的文章就介绍到这了,更多相关Vue router配置内容请搜索编程网以前的文章或继续浏览下面的相关文章希望大家以后多多支持编程网!

--结束END--

本文标题: Vuerouter配置与使用分析讲解

本文链接: https://www.lsjlt.com/news/175685.html(转载时请注明来源链接)

有问题或投稿请发送至: 邮箱/279061341@qq.com    QQ/279061341

本篇文章演示代码以及资料文档资料下载

下载Word文档到电脑,方便收藏和打印~

下载Word文档
猜你喜欢
  • Vuerouter配置与使用分析讲解
    目录说明一、安装及配置二、在html中使用HTMLrouter-linkrouter-view三、路由的基本使用四、动态路由的添加说明 本教程适用于vue3中的路由vue-route...
    99+
    2022-12-23
    Vue router配置 Vue router使用方法
  • Vuex与Vuerouter的使用详细讲解
    目录Vuex的使用Vuex的使用流程Vuex的执行流程图Vuex伪代码Vue-router的使用基本使用流程路由的跳转携带参数的路由跳转路由嵌套路由守卫Vuex的使用 在Vue中实现...
    99+
    2022-11-13
    Vuex的使用 Vue router使用
  • 分析讲解SpringMVC注解配置如何实现
    目录简介注解类代替web.xml注解类代替Spring-mvc.xml简介 使用配置类和注解代替web.xml和SpringMVC配置文件的功能 在Servlet3.0环境中,容器会...
    99+
    2022-11-13
  • Vue项目配置router.js流程分析讲解
    目录一、查看版本号二、下载或者卸载已有版本三、引入vue-router四、router-view视图五、举个例子总结一、查看版本号 查看vue-router依赖版本号,防止后面出现版...
    99+
    2022-12-08
    Vue项目配置router.js Vue router.js
  • Go语言指针使用分析与讲解
    普通指针 和C语言一样, 允许用一个变量来存放其它变量的地址, 这种专门用于存储其它变量地址的变量, 我们称之为指针变量 和C语言一样, Go语言中的指针无论是什么...
    99+
    2022-11-12
  • Linux DNS 解析与配置 nslookup使用 与 /etc/resolv.conf文件的配置
    Linux DNS 解析与配置 序 当我接收到一批新的服务器时,尝试连接外网,比如访问百度的首页: curl www.baidu.com 发现报错,不能解析正确的主机名。这个其实就是主机在解析主机名时没能正确发现对应的主机的 ip。当...
    99+
    2023-12-25
    linux 服务器 运维
  • C++详细分析讲解引用的概念与使用
    目录1.引用的概念2.引用的格式3.引用的特性4.取别名原则5.引用的使用场景做参数做返回值int&Count()的讲解传值传引用效率比较6.引用和指针的不同点1.引用的概念...
    99+
    2022-11-13
  • C++关于const与引用的分析讲解
    目录一、关于 const 的疑问二、关于引用的疑问三、小结一、关于 const 的疑问 const 什么时候为只读变量?什么时候是常量? const 常量的判别准则 只有用字面量初始...
    99+
    2022-11-13
  • SpringCloud超详细i讲解Feign自定义配置与使用
    目录日志配置Basic 认证配置超时时间配置客户端组件配置GZIP压缩配置继承特性多参数请求构造日志配置 有时候我们遇到 Bug,比如接口调用失败、参数没收到等 问题,或者想看看调用...
    99+
    2022-11-13
  • Moosefs分布式文件系统集群讲解配置的示例分析
    这篇文章给大家介绍Moosefs分布式文件系统集群讲解配置的示例分析,内容非常详细,感兴趣的小伙伴们可以参考借鉴,希望对大家能有所帮助。1 管理服务器(master-server):负责各个数据存储服务器的...
    99+
    2022-10-19
  • PHP日志LOG4PHP配置与使用的示例分析
    这篇文章主要介绍了PHP日志LOG4PHP配置与使用的示例分析,具有一定借鉴价值,感兴趣的朋友可以参考下,希望大家阅读完这篇文章之后大有收获,下面让小编带着大家一起了解一下。维护了 一个老项目, 没有日志功能, 就给加了这个log4php,...
    99+
    2023-06-15
  • Python函数参数分类使用与新特性详细分析讲解
    目录参数分类一,定义与使用角度二,传参方式角度1,位置参数2,默认参数3,可变参数4,关键字参数三,参数新特性1,仅位置参数2,仅关键字参数(命名关键字参数)函数参数看似很平常,在深...
    99+
    2023-01-28
    Python函数参数分类 Python函数参数特性
  • SpringCloud中Eureka的配置及使用讲解
    目录创建基本项目、导包配置Eureka服务配置提供者(提供接口)配置消费者(调用接口) 之后我们配置主类Ribbon最后总结Eureka 采用 CS(Client/Serv...
    99+
    2023-01-17
    SpringCloud Eureka使用 SpringCloud Eureka配置 Eureka的配置和使用
  • Elasticsearch索引的分片分配Recovery使用讲解
    目录什么是recovery?减少集群full restart造成的数据来回拷贝减少主副本之间的数据复制特大热索引为何恢复慢什么是recovery? 在elasticsearch中,r...
    99+
    2022-11-13
  • C语言详细分析讲解struct与union使用方法
    目录一、struct 的小秘密二、结构体与柔性数组三、C语言中的 union四、小结一、struct 的小秘密 C语言中的 struct 可以看作变量的集合 struct ...
    99+
    2022-11-13
  • Kotlin中Lambda表达式与高阶函数使用分析讲解
    目录Lambda表达式高阶函数小结编程语言的发展,通过需求,不断的变化出新的特性,而这些特性就会使得编程变得更加的简洁。 Lambda表达式 Lambda表达式的出现,一定程度上使得...
    99+
    2022-12-08
    Kotlin Lambda表达式 Kotlin高阶函数
  • Nginx配置使用实例分析
    本篇内容主要讲解“Nginx配置使用实例分析”,感兴趣的朋友不妨来看看。本文介绍的方法操作简单快捷,实用性强。下面就让小编来带大家学习“Nginx配置使用实例分析”吧!配置步骤:配置nginx的方法:首先要打开“/etc/nginx/con...
    99+
    2023-07-02
  • Javamysql详细讲解双数据源配置使用
    目录使用方式application.properties中数据库配置config文件配置1、配置 spring.datasource.db12、配置 spring.datasourc...
    99+
    2022-11-13
  • MySQL中存储引擎InnoDB配置与使用的示例分析
    这篇文章将为大家详细讲解有关MySQL中存储引擎InnoDB配置与使用的示例分析,小编觉得挺实用的,因此分享给大家做个参考,希望大家阅读完这篇文章后可以有所收获。innodb 通过多版本并发控制(MVCC)...
    99+
    2022-10-18
  • Spring常用配置及解析类的示例分析
    这篇文章将为大家详细讲解有关Spring常用配置及解析类的示例分析,小编觉得挺实用的,因此分享给大家做个参考,希望大家阅读完这篇文章后可以有所收获。springMVC配置用法的文章很多,但具体描述清楚的不多,这里主要介绍下常用的配置项的用法...
    99+
    2023-05-30
    spring
软考高级职称资格查询
编程网,编程工程师的家园,是目前国内优秀的开源技术社区之一,形成了由开源软件库、代码分享、资讯、协作翻译、讨论区和博客等几大频道内容,为IT开发者提供了一个发现、使用、并交流开源技术的平台。
  • 官方手机版

  • 微信公众号

  • 商务合作