Vue3_基础使用_4_路由器Router

概念:

     路由:是一个key-value的对应关系叫路由。

     路由器:管理多个路由的集合或者叫设备称为路由器。

由于现在组件替代了以前的mvc中的cshtml, 组件的菜单切换也不用我手动去写,vue给我们通过配置完成。

实现简单的路由跳转:

     1.安装路由,由于是vue3直接安装不像vue2加个3版本。

     

      2.src下建立router文件夹,在该文件夹下建立index.ts    vue3是ts,vue2是js.index中写路由配置

          准备好跳转的组件。

      备注:router 文件夹是默认的名称也就是一般都写这个名代表这是管理路由的。 
      vue中区分一般组件与路由组件,
      一般组件:指自己写<demo/>标签出来的一般放在compoents文件夹下。
      路由组件:指通过路由配置出来的并没有自己写标签,一般放在pages或者叫views下。

  3.将路由使用到vue项目中,打开main.ts  写入下面代码

   4.组件中使用路由跳转

备注:先从vue-router引入他的组件,routerView占位,routerLink生成跳转a标签里面这个to就是路由中的path属性。已经可以进行切换。

路由器的工作模式:

history:url更加美观不带有#,缺点是需要后端服务器的配合处理,否则会有404.

hash:url带有#号,兼容性更好不需要服务器配合。

const router=createRouter({history:createWebHistory()//history 模式 url不带#...
})
const router=createRouter({history:createWebHashHistory()//Hash 模式 url带#...
})

命名路由:

   所谓命名路由就是在路由配置加name属性,后面可以写name根据这个跳,不用写path,其实就是多一个跳转的写法。

嵌套路由:

    就是子组件里面还有路由跳转。

使用  第一种写法

使用name:

路由的参数传递query:

?后面跟参数   第一种写法

传递动态值    第一种写法

第二种写法:

接收:

上面的route.query.a 过于麻烦,使用结构化幅值优化,但是结构化幅值一个响应式会将它失去响应式特性  需要使用toRefs让其保留响应式。

路由的参数传递Params:

传递参数第一种 写法

 第二种写法,这里不能传对象和数组

忽略参数的值,浏览器也会呈现  传递的值

修改路由加占位:那个可以不传后面加?

接收使用:

路由_props配置

可以让路由更方便的接收参数,因为上面接收query,params参数都要写下面一堆进行接收。

路由配置一下:

相当于你手动写<demo id="001" name="php"/>组件props传递参数。

接收使用:

replace属性

vue路由replace属性的意思是是否保留历史记录两个值push保留,replace不保留。

在跳转的标签上加replace属性就不保留历史,不加默认push模式有历史。

编程式路由导航

意思就是不用<RouterLink>标签进行跳转,因为这个标签始终会生成一个A标签。

想任意用一个html标签进行跳转就编程式导航。

定义一个button进行跳转

重定向

意思是默认打开那个组件,在路由配置中加属性,与路由平级。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://xiahunao.cn/news/2799899.html

如若内容造成侵权/违法违规/事实不符,请联系瞎胡闹网进行投诉反馈,一经查实,立即删除!

相关文章

MySQL进阶45讲【24】MySQL是怎么保证高可用的?

1 前言 在上一篇文章中&#xff0c;介绍了binlog的基本内容&#xff0c;在一个主备关系中&#xff0c;每个备库接收主库的binlog并执行。 正常情况下&#xff0c;只要主库执行更新生成的所有binlog&#xff0c;都可以传到备库并被正确地执行&#xff0c;备库就能达到跟主库一…

Autosar-Mcal配置详解-MCU

3.6.1创建、配置RAM 1)创建RAM配置 2)配置RAM 以F1KM R7F7016533ABG为例,它的local RAM有512K, global RAM 192K,Retention RAM 64K. Local RAM: local RAM就是程序平常使用的RAM,在DeepStop模式下内容会丢失。 Global RAM:主要用于DMA的源地址和目的地址使用,在Dee…

第十四章[面向对象]:14.4:实例方法/类方法/静态方法

一,实例方法: 1,实例方法: 类中不用任何修饰的方法为实例方法。 特点:第一个参数必须是实例对象,该参数名一般约定为“self”, 通过它来传递实例的属性和方法(也可以传类的属性和方法); 实例方法可以访问和修改实例对象的属性 调用:只能由实例对象调用。 不能被类调用…

华为OD机试真题-围棋的气-2023年OD统一考试(C卷)---python代码

题目&#xff1a; 代码&#xff1a; """ # 输入&#xff1a;2的倍数 第一个为行号 0-18 第二个为列号 0-18第一行为黑色 第二行为白色思路&#xff1a;先求黑色&#xff0c;进行去重棋子的位置&#xff0c;再求白色 逐个棋子求坐标。 """ d…

【Node.js】介绍、下载及安装

目录 一、什么是 Node.js 二、Node.js下载 下载方式1&#xff1a;直接在首页下载&#xff08;下载的是.msi后缀的安装包&#xff09; 下载方式2&#xff1a;点击官网顶上的DOWNLOAD 三、Node.js安装 .zip后缀的安装步骤 .msi后缀的安装步骤 一、什么是 Node.js Node.js …

python基础 | 模块与异常

1、模块 Python 模块(Module)&#xff0c;是一个 Python 文件&#xff0c;以 .py 结尾&#xff0c;包含了 Python 对象定义和Python语句 模块让你能够有逻辑地组织你的 Python 代码段&#xff0c;不可能把代码写在一起 把相关的代码分配到一个模块里能让你的代码更好用&#…

Spring学习笔记(五)--Spring的AOP模块

一、AOP的底层原理 AOP的底层原理是动态代理&#xff0c;动态代理有两种方式&#xff1a;JDK动态代理和CGLib动态代理&#xff0c;在有接口的实现类时我们通常用JDK的动态代理方式&#xff08;默认情况&#xff09;为类创建代理对象&#xff0c;JDK的动态代理方式可以实现无入…

vue如何动态加载显示本地图片资源

在实际开发中&#xff0c;根据某一个变量动态展示图片的情况有很多。实现方法分打包构建工具的差异而不同。 1、webpack的项目 require引入图片资源 2、vite的项目 new URL(url,base).href 疑问解答&#xff1a;为什么vite项目不可以用require&#xff1f; 原因在于&#xf…

OpenAI Sora引领AI跳舞视频新浪潮:字节跳动发布创新舞蹈视频生成框架

OpenAI的Sora已经引起广泛关注&#xff0c;预计今年AI跳舞视频将在抖音平台上大放异彩。下面将为您详细介绍一款字节跳动发布的AI视频动画框架。 技术定位&#xff1a;这款框架采用先进的diffusion技术&#xff0c;专注于生成人类舞蹈视频。它不仅能够实现人体动作和表情的迁移…

高校学科竞赛平台|基于springboot高校学科竞赛平台设计与实现(源码+数据库+文档)

高校学科竞赛平台目录 目录 基于springboot高校学科竞赛平台设计与实现 一、前言 二、系统功能设计 三、系统实现 1、竞赛题库管理 2、竞赛信息管理 3、晋级名单管理 4、往年成绩管理 5、参赛申请管理 四、数据库设计 1、实体ER图 五、核心代码 六、论文参考 七、最…

STM32F10X(Cortex-M3)系统定时器寄存器笔记和系统定时器精准延时函数

Cortex-M3系统定时器寄存器笔记和系统定时器精准延时函数 简介系统定时器寄存器STK_CTRLSTK_LOADSTK_VALSTK_CALIB STM32F10X(Cortex-M3)精准延时函数 简介 在STM32F10X(Cortex-M3)除了通用定时器和看门狗定时器外&#xff0c;还有一个系统定时器(SysTick) 拿STM32F103C8T6来说…

开年炸裂-Sora/Gemini

最新人工智能消息 谷歌的新 Gemini 模型 支持多达 1M的Token&#xff0c;可以分析长达一小时的视频 1M Token可能意味着分析700,000 个单词、 30,000 行代码或11 小时的音频、总结、改写和引用内容。 Comment&#xff1a;google公司有夸大的传统&#xff0c;所以真实效果需要上…

开源 - 一款可自定义的在线免杀平台|过x60、wd等

免责声明&#xff1a;本工具仅供安全研究和教学目的使用&#xff0c;用户须自行承担因使用该工具而引起的一切法律及相关责任。作者概不对任何法律责任承担责任&#xff0c;且保留随时中止、修改或终止本工具的权利。使用者应当遵循当地法律法规&#xff0c;并理解并同意本声明…

Docker硬件直通:如何在容器中高效利用GPU与硬盘资源

Docker硬件直通&#xff1a;如何在容器中高效利用GPU与硬盘资源 引言Docker基础容器与虚拟机的区别Docker的工作原理 访问服务器硬件资源概述为何需要在Docker容器中访问硬件资源可访问的硬件资源类型 在Docker中使用GPU配置Docker以使用宿主机的GPU资源安装NVIDIA Docker插件 …

【算法与数据结构】1020、130、LeetCode飞地的数量 被围绕的区域

文章目录 一、1020、飞地的数量二、130、被围绕的区域三、完整代码 所有的LeetCode题解索引&#xff0c;可以看这篇文章——【算法和数据结构】LeetCode题解。 一、1020、飞地的数量 思路分析&#xff1a;博主认为题目很抽象&#xff0c;非常难理解。想了好久&#xff0c;要理解…

【C++】STL容器之string(一)

&#x1f490; &#x1f338; &#x1f337; &#x1f340; &#x1f339; &#x1f33b; &#x1f33a; &#x1f341; &#x1f343; &#x1f342; &#x1f33f; &#x1f344;&#x1f35d; &#x1f35b; &#x1f364; &#x1f4c3;个人主页 &#xff1a;阿然成长日记 …

C语言----字符数组指针

1.char arr[] {a,b,c,d,e,f}; sizeof分析类型就可以计算所占的内存空间的大小&#xff1b; &#xff08;1&#xff09;printf("%d\n", sizeof(arr)); 数组名单独放进里面&#xff0c;计算整个数组大小&#xff0c;所以是6字节&#xff1b; &#xff08;2&#xff…

计算以10为底的对数 math.log10(x)

【小白从小学Python、C、Java】 【计算机等考500强证书考研】 【Python-数据分析】 计算以10为底的对数 math.log10(x) [太阳]选择题 以下代码的输出结果中正确的是? import math print("【执行】math.log10(10)") print(math.log10(10)) print("【执行】math…

尚未创建默认 SSL 站点。若要支持不带 SNI 功能的浏览器,建议创建一个默认 SSL 站点。

在 Windows Server 2012 IIS 站点中设置 SSL 证书后&#xff0c;IIS 右上角提示&#xff1a; 尚未创建默认 SSL 站点。若要支持不带 SNI 功能的浏览器&#xff0c;建议创建一个默认 SSL 站点。 该提示客户忽略不管&#xff0c;但是若要支持不带 SNI(Server Name Indication)…

Retrofit2原理分析

Retrofit官网 GitHub上的Retrofit 使用Retrofit进行网络请求的主要步骤 创建一个接口 用于描述HTTP请求。接口里的方法使用注解来标记请求方式、API路径、请求参数等信息。使用Retrofit.Builder().build();配置和创建一个Retrofit实例&#xff1b;调用retrofit.create()方法获…