码农知识堂 - 1000bd
  •   Python
  •   PHP
  •   JS/TS
  •   JAVA
  •   C/C++
  •   C#
  •   GO
  •   Kotlin
  •   Swift
  • Vue学习之--------路由的query、params参数、路由命名(3)(2022/9/5)


    1、路由(Router)的基本使用:https://blog.csdn.net/weixin_43304253/article/details/126700292
    2、Vue学习之--------多级路由的使用:https://blog.csdn.net/weixin_43304253/article/details/126701102

    文章目录

    • 1、路由的query参数
      • 1.1 传递参数
      • 1.2 接收参数
      • 1.3 项目中的实际应用
      • 1.4 测试结果
    • 2、路由的命名
      • 2.1 作用
      • 2.2 如何使用
      • 2.3 在项目中的实际应用
      • 2.4 测试效果
    • 3、路由的params参数
      • 3.1配置路由,声明接收params参数
      • 3.2 传递参数
      • 3.3 接收参数
      • 3.4 在项目中的实际应用
      • 3.5 测试结果
    • 4、路由的props配置
      • 4.1 作用
      • 4.2 应用
      • 4.3 在项目中的实际应用
        • 4.3.1 第一种方式
        • 4.3.2 第二种方式
        • 4.3.3 第三种方式
    • 5、``的replace属性
      • 5.1 作用
      • 5.2 浏览器的历史记录有两种写入方式
      • 5.3 如何开启```replace```模式

    1、路由的query参数

    1.1 传递参数

       <!-- 跳转并携带query参数,to的字符串写法 -->
       <router-link :to="/home/message/detail?id=666&title=你好">跳转</router-link>
       				
       <!-- 跳转并携带query参数,to的对象写法 -->
       <router-link 
       	:to="{
       		path:'/home/message/detail',
       		query:{
       		   id:666,
               title:'你好'
       		}
       	}"
       >跳转</router-link>
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • 7
    • 8
    • 9
    • 10
    • 11
    • 12
    • 13

    1.2 接收参数

       $route.query.id
       $route.query.title
    
    • 1
    • 2

    1.3 项目中的实际应用

    在这里插入图片描述
    在这里插入图片描述

    1.4 测试结果

    在这里插入图片描述

    2、路由的命名

    2.1 作用

    给路由命名,然后跳转(在项目中遇到过)

    可以简化路由的跳转。

    2.2 如何使用

    • 1、给路由命名:
          {
          	path:'/demo',
          	component:Demo,
          	children:[
          		{
          			path:'test',
          			component:Test,
          			children:[
          				{
                            name:'hello' //给路由命名
          					path:'welcome',
          					component:Hello,
          				}
          			]
          		}
          	]
          }
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • 7
    • 8
    • 9
    • 10
    • 11
    • 12
    • 13
    • 14
    • 15
    • 16
    • 17
    • 2、简化跳转:
          <!--简化前,需要写完整的路径 -->
          <router-link to="/demo/test/welcome">跳转</router-link>
          
          <!--简化后,直接通过名字跳转 -->
          <router-link :to="{name:'hello'}">跳转</router-link>
          
          <!--简化写法配合传递参数 -->
          <router-link 
          	:to="{
          		name:'hello',
          		query:{
          		   id:666,
                      title:'你好'
          		}
          	}"
          >跳转</router-link>
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • 7
    • 8
    • 9
    • 10
    • 11
    • 12
    • 13
    • 14
    • 15
    • 16

    2.3 在项目中的实际应用

    在这里插入图片描述
    在这里插入图片描述
    在这里插入图片描述

    2.4 测试效果

    在这里插入图片描述

    3、路由的params参数

    3.1配置路由,声明接收params参数

    path:'detail/:id/:title', //使用占位符声明接收params参数。在实际的项目开发中中遇到过

       {
       	path:'/home',
       	component:Home,
       	children:[
       		{
       			path:'news',
       			component:News
       		},
       		{
       			component:Message,
       			children:[
       				{
       					name:'xiangqing',
       					path:'detail/:id/:title', //使用占位符声明接收params参数
       					component:Detail
       				}
       			]
       		}
       	]
       }
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • 7
    • 8
    • 9
    • 10
    • 11
    • 12
    • 13
    • 14
    • 15
    • 16
    • 17
    • 18
    • 19
    • 20

    3.2 传递参数

       <!-- 跳转并携带params参数,to的字符串写法 -->
       <router-link :to="/home/message/detail/666/你好">跳转</router-link>
       				
       <!-- 跳转并携带params参数,to的对象写法 -->
       <router-link 
       	:to="{
       		name:'xiangqing',
       		params:{
       		   id:666,
               title:'你好'
       		}
       	}"
       >跳转</router-link>
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • 7
    • 8
    • 9
    • 10
    • 11
    • 12
    • 13

    特别注意:路由携带params参数时,若使用to的对象写法,则不能使用path配置项,必须使用name配置!
    在这里插入图片描述

    3.3 接收参数

       $route.params.id
       $route.params.title
    
    • 1
    • 2

    3.4 在项目中的实际应用

    在这里插入图片描述

    3.5 测试结果

    在这里插入图片描述

    4、路由的props配置

    4.1 作用

    让路由组件更方便的收到参数

    4.2 应用

    {
    	name:'xiangqing',
    	path:'detail/:id',
    	component:Detail,
    
    	//第一种写法:props值为对象,该对象中所有的key-value的组合最终都会通过props传给Detail组件
    	// props:{a:900}
    
    	//第二种写法:props值为布尔值,布尔值为true,则把路由收到的所有params参数通过props传给Detail组件
    	// props:true
    	
    	//第三种写法:props值为函数,该函数返回的对象中每一组key-value都会通过props传给Detail组件
    	props(route){
    		return {
    			id:route.query.id,
    			title:route.query.title
    		}
    	}
    }
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • 7
    • 8
    • 9
    • 10
    • 11
    • 12
    • 13
    • 14
    • 15
    • 16
    • 17
    • 18
    • 19

    4.3 在项目中的实际应用

    4.3.1 第一种方式

    //第一种写法:props值为对象,该对象中所有的key-value的组合最终都会通过props传给Detail组件

    在这里插入图片描述
    在这里插入图片描述

    4.3.2 第二种方式

    第二种写法:props值为布尔值,布尔值为true,则把路由收到的所有params参数通过props传给Detail组件
    只能将params参数通过props传给组件,query不行!

    在这里插入图片描述

    在这里插入图片描述

    在这里插入图片描述

    在这里插入图片描述

    4.3.3 第三种方式

    //第三种写法:props值为函数,该函数返回的对象中每一组key-value都会通过props传给Detail组件
    无限制、使用最多
    在这里插入图片描述

    在这里插入图片描述

    在这里插入图片描述

    5、的replace属性

    5.1 作用

    • 控制路由跳转时操作浏览器历史记录的模式

    5.2 浏览器的历史记录有两种写入方式

    • 分别为push和replace,push是追加历史记录,replace是替换当前记录。路由跳转时候默认为push

    5.3 如何开启replace模式

    News

  • 相关阅读:
    Swift - 泛型
    AI推介-多模态视觉语言模型VLMs论文速览(arXiv方向):2024.05.01-2024.05.10
    int转十六进制字符串
    了解泛型的使用
    网络空间安全未来就业前景和就业方向,看着六点
    使用C语言+USRP B210从零开始实现无线通信(3) DASK差分幅度键控调制
    【51单片机系列】C51基础
    Task01|GriModel统计分析(下)|方法论与一元数值检验|假设检验1
    vulfocus——elasticsearch代码执行(CVE-2014-3120)
    Day14--商品列表-点击商品item项导航跳转到商品详情页面
  • 原文地址:https://blog.csdn.net/weixin_43304253/article/details/126703843
  • 最新文章
  • 沪漂五周年了:我越来越迷茫了
    Agentic Skill Routing 实战:别再把所有 Skill 塞进 AI Agent 上下文
    MySQL-Seconds_behind_master的精度误差
    [MAF预定义ChatClient中间件-03]CachingChatClient——利用缓存省钱省时间
    AI的至暗历史:从万众期待到被政府撤资,AI的两次死亡徘徊
    Agent OS :五种驯服不确定性的范式
    PortSwigger SQL注入LAB11
    数据库即时编译JIT
    [Begin]AI Learn Data Day 0
    深度学习进阶(二十七)现代 LLM 的核心架构设计其二:SwiGLU
  • 热门文章
  • 十款代码表白小特效 一个比一个浪漫 赶紧收藏起来吧!!!
    奉劝各位学弟学妹们,该打造你的技术影响力了!
    五年了,我在 CSDN 的两个一百万。
    Java俄罗斯方块,老程序员花了一个周末,连接中学年代!
    面试官都震惊,你这网络基础可以啊!
    你真的会用百度吗?我不信 — 那些不为人知的搜索引擎语法
    心情不好的时候,用 Python 画棵樱花树送给自己吧
    通宵一晚做出来的一款类似CS的第一人称射击游戏Demo!原来做游戏也不是很难,连憨憨学妹都学会了!
    13 万字 C 语言从入门到精通保姆级教程2021 年版
    10行代码集2000张美女图,Python爬虫120例,再上征途
小工具 小游戏
Copyright © 2022 侵权请联系2656653265@qq.com    京ICP备2022015340号-1

京公网安备 11010502049817号