前端vue入门(纯代码)27_路由的query参数

安静地努力!!!

25.Vue Router--路由的query参数

多级路由在src/router/index.js中【三级路由】的配置如下:

// 该文件专门用于创建整个应用的路由器
import VueRouter from "vue-router";
//引入组件
import About from '../pages/About'
import Home from '../pages/Home'
import Cartoon from '../pages/Cartoon'
import Stars from '../pages/Stars'
import Detail from '../pages/Detail'
//创建并暴露一个路由器
export default new VueRouter({
// 定义一些路由
// 每个路由都需要映射到一个组件。
routes: [//配置路由路径和路由组件{path: '/about',component: About, //要跳转到的组件   },{path: '/home',component: Home,children:[{name:'Hcartoon',path: 'cartoon',component: Cartoon,},{path:'stars',component: Stars,children:[{path:'detail',component: Detail,},]}],}
]
})
  • 我们如何把二级路由里Stars组件的数据starList,传递给下一级路由的Detail组件?

路由下的Stars组件中,配置如下:

Stars.vue中存储的数据和传递数据方法

data() {return {starList: [{ id: '001', title: '周星驰',works:'《功夫》' },{ id: '002', title: '周杰伦' ,works:'《一路向北》'},{ id: '003', title: '沈月',works:'《致我们单纯的小美好》' },],};
},

方法1:跳转路由并携带query参数,to的字符串写法

  • 注意:双引号里面的是反引号

  • ${xxx}:模板字符串

  • 补充:什么是URL参数?

    URL 参数是追加到 URL 上的一个名称/值对。参数以问号 (?) 开始并采用 name=value 的格式。如果存在多个 URL 参数,则参数之间用一个 (&) 符隔开。有时还会有 #

<li v-for="s in starList" :key="s.id"><!-- 跳转路由并携带query参数,to的字符串写法 --><router-link :to="`/home/stars/detail?title=${s.title}&works=${s.works}`">{{ s.title }}</router-link>
</li>

方法2:跳转路由并携带query参数,to的对象写法

<!-- 跳转路由并携带query参数,to的对象写法 -->
<router-link :to="{path:'/home/stars/detail',query:{title:s.title,works:s.works}
}">{{ s.title }}
</router-link>
  • 我们如何能确认传递成功了呢?【我们去路径1下的组件Detail中的生命周期钩子mounted中的打印一下this.$route

Detail.vue

mounted() {console.log(this.$route);
},

this.$route打印结果如下:

所以,我们在组件Detail中接收数据的方式如下:

<template><div><li>明星:{{ $route.query.title }}</li><li>代表作:{{ $route.query.works}}</li></div>
</template>

案例结果展示:

总结:路由的query参数

  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>
    
  2. 接收参数:

    $route.query.id
    $route.query.title
    

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

如若内容造成侵权/违法违规/事实不符,请联系编程知识网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

springboot家政服务管理平台

本系统为了数据库结构的灵活性所以打算采用MySQL来设计数据库&#xff0c;而java技术&#xff0c;B/S架构则保证了较高的平台适应性。本文主要介绍了本系统的开发背景&#xff0c;所要完成的功能和开发的过程&#xff0c;主要说明了系统设计的重点、设计思想。 本系统主要是设…

Docker学习笔记23

Docker Swarm架构&#xff1a; Swarm中以集群&#xff08;Cluster&#xff09;为单位进行管理&#xff0c;支持服务层面的操作。 集群是Swarm所管理的对象。 基本概念&#xff1a; 节点&#xff08;Node&#xff09;为Swarm集群中的一个Docker Engine实例。其中管理节点&#…

Elasticsearch索引库、文档操作

一、索引库操作 1、创建索引库&#xff1a; #创建索引库 PUT /索引库名 {"mappings": {"properties": {"info":{"type": "text","analyzer": "ik_smart"},"email":{"type": "…

前端工程打包部署

打包 直接执行第二个脚本build即可 打包后的文件将会放在dist目录下 部署 NGINX&#xff1a;是一款轻量级的Web服务器/反向代理服务器及电子邮件&#xff08;IMAP/POP3&#xff09;代理服务器。其特点是占用内存少&#xff0c;并发能力强&#xff0c;在各大型互联网公司都有非…

JDBC技术【JDBC概述、获取数据库连接、 下载数据库驱动】(一)-全面详解(学习总结---从入门到深化)

目录 JDBC概述 JDBC编写步骤 获取连接 下载数据库驱动 获取数据库连接 Properties文件的使用 JDBC概述 数据的持久化 持久化(persistence)&#xff1a;将内存中的数据保存到可永久保存的存储 设备中&#xff08;如磁盘&#xff09;。 持久化的主要应用是将内存中的数据存储…

微信小程序canvas生成图片并保存

需求&#xff1a; 做一个类似下图的功能。图片内容是动态的&#xff0c;用canvas画出来&#xff0c;生成临时图片&#xff0c;再保存。 实现&#xff1a; <view class"canvasBox"><canvas canvas-id"myCanvas" class"myCanvas">&l…

B. Building Company

Problem - B - Codeforces 思路&#xff1a;我们能够发现这其实类似于操作系统的问题&#xff0c;其思想就是我们先把能完成的工程完成&#xff0c;然后加入完成工程后得到的奖励&#xff0c;然后再看是否会有新的工程能够完成&#xff0c;然后一直重复知道不会再出现新的工程能…

Unity/Shader 零碎知识点

来源&#xff1a;shader入门精要-冯乐乐 坐标系 Unity使用的是左手坐标系&#xff1b;观察空间&#xff0c;通俗来讲就是以摄像机为原点的坐标系&#xff0c;摄像机的前向是z轴的负方向&#xff0c;与模型和世界空间中的定义相反&#xff0c;z轴的坐标减少意味着场景深度的增加…

【动手学习深度学习--逐行代码解析合集】08模型选择、欠拟合和过拟合

【动手学习深度学习】逐行代码解析合集 08模型选择、欠拟合和过拟合 视频链接&#xff1a;动手学习深度学习–模型选择、欠拟合和过拟合 课程主页&#xff1a;https://courses.d2l.ai/zh-v2/ 教材&#xff1a;https://zh-v2.d2l.ai/ 1、生成数据集 import math import numpy a…

PROFINET转ETHERNET/IP网关西门子通讯协议profinet

大家好&#xff0c;今天我们来聊一款令人兴奋的产品——远创智控YC-PN-EIP&#xff01;它是一款自主研发的 PROFINET 从站功能的通讯网关&#xff0c;可以将 PROFINET网络和ETHERNET/IP 网络连接起来&#xff0c;实现数据传输和交换。但这只是它的基础功能&#xff0c;它还有哪…

word因导入mathtype不能使用复制粘贴快捷键的解决方法

1. 我们安装完mathtype后&#xff0c;有时会有两个mathtype显示&#xff0c;其中一个是属于office文件夹下的&#xff0c;另一个是win文件夹下的。如图&#xff1a; 2. 如果word中的复制粘贴快捷键&#xff08;CTRLC和CTRLV&#xff09;不能用&#xff0c;通常是因为office路径…

命名管道使用示例

用命名管道实现client和server端进行通信 【实现步骤】 创建两个没有关系的进程--》编写client和server源文件&#xff0c;并分别编译成可执行程序&#xff1b;创建命名管道文件&#xff0c;用函数int mkfifo(const char *filename,mode_t mode);client端以写的方式打开管道文…