6、父子组件传参、路由的嵌套、命名视图、路由跳转传参

一、父子组件传参

1、父传子

  • 在父组件的子组件中自定义一个属性
  • 在子组件中有一个props属性,用来接收父组件传递的数据,传递的数据不能修改,还可以设置默认值
<!-- 父组件 -->data() {return {flag: false,num:10,  //传的参数free:''}}
<!-- :type1="num"自定义的属性 --><header-com :type1="num"  type2="free"></header-com><header-com type2="free"></header-com><!--没有传type1 undefined --><swiper-com class="swiper"></swiper-com>
<!-- 子组件 -->
<!-- 一个props属性,用来接收父组件传递的数据 -->props: {// type1:[Number],type2: [Number, String],//不传的话默认值是30type1: {default: 30}},created() {//父组件传过来的值不能修改// this.type1++console.log(this.type1)console.log(this.type2)}

2、子传父

  • 在父组件中的子标签自定义一个事件,事件里面有一个参数,用来接收子组件传递的参数
  • 在子组件中有一个方法this.$emit(自定义事件的名字,传递的参数)
<!--  父组件  -->
<!--  2、自定义一个事件  里面有参数 用来接收-->
methods:{fromSon1(data){console.log(data)}}
<!--  1、自定义一个事件-->
<swiper-com class="swiper" @fromSon="fromSon1"></swiper-com>
<!-- 子组件-->
<!--传递的数据-->data() {return {swiper: {name: 'swiper '}}},<!--子组件中有一个方法this.$emit(自定义事件的名字,传递的参数)-->created() {<!--this.$emit(自定义事件的名字,传递的参数)-->this.$emit('fromSon',this.swiper)}
  • 或者用方法来传参
  • image-20240329205359905

二、路由的嵌套

  • 声明路由的时候设置children,这是children是一个数组,数组是路由对象,路径后面不加 /

  • 在声明的父组件里面写上标签

  • 1、在index.js中 ,找到父组件 注意里面不能写 /

 // 品牌案例{path: '/brand',component: brandManagement,<!-- 声明路由的时候设置children -->children: [{<!-- 里面不能写 / -->path: 'keyUp',component: keyBoard,},{path: 'filter',component: filterView,}]},
  • 2、然后在父组件里面写
  • image-20240329212740930
  • 用来在 头部和底部相同的项目中,只用更换中间的部分

三、命名视图

  • 一个地址对应一个组件,现在可以一个地址对应多个组件
    • 在路由对象里面声明components属性,里面写的是组件名称
    • 在父组件用router-view里面有一个name属性进行展示
  • 1、在index.js页面,
    {path: '/brand',component: brandManagement,children: [{path: 'keyUp',<!-- 写一个components-->components: {default:keyBoard,filterView,axiosView}},]},
  • 2、在父组件里面写
  • 用来布局 同时传入两个组件,相当于标签

路由跳转传参

1、声明式(2种)

  • query

//pageA
<router-link :to="{path:'/pageB',query:{id:111}}">pageA1</router-link>
//pageBcreated() {console.log(this.$route.query.id)}
  • name

 <router-link :to="{name: 'pageB',params:{id:999}}">pageB</router-link>//pageBcreated() {console.log(this.$route.params.id)}
  • 在路由里面加 冒号id
    image-20240329223949583

2、函数式

  • this.$router.push({path:‘路由地址’, query:{传递的参数}})
<!--path: '/pageB',  path,path 不用id -->
methods: {toPageB() {this.$router.push({path: '/pageB',path: {id:1000}})}}
<button @click="toPageB">toPageB</button>
<!--  path: '/pageB/:id'  name,params -->methods:  {toPageB() {this.$router.push({name: 'pageB',params: {id:1000}})}}

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

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

相关文章

如何准备科学海报

科学会议上的海报展示可以为早期职业研究人员提供宝贵的机会来练习他们的沟通技巧&#xff0c;获得有关他们研究的反馈&#xff0c;并扩大他们的网络。“通过与其他研究人员一对一地讨论我的工作&#xff0c;[我发现]我可以确定哪些工作做得好&#xff0c;哪些需要改进&#xf…

打PTA (15分)(JAVA)

目录 题目描述 输入格式&#xff1a; 输出格式&#xff1a; 输入样例&#xff1a; 输出样例&#xff1a; 题解 题目描述 传说这是集美大学的学生对话。本题要求你做一个简单的自动问答机&#xff0c;对任何一个问句&#xff0c;只要其中包含 PTA 就回答 Yes!&#xff0c;其…

IDEA超强攻略,实用插件、进阶AI插件、实用配置

文章目录 IDEA超强攻略实用插件Alibaba Java Coding GuidelinesCheckStyleSonarLintEasyCode 进阶AI插件TabnineCodeGeeX通义灵码&#xff08;TONGYI Lingma&#xff09;Bito 实用配置设置字体大小设置主题风格自动导包&删除无用包配置类注释模板配置方法注释模板打开IDEA不…

速成软件书是神器还是焦虑?

一、背景 "速成软件书"通常是指那些宣称能帮助读者在短时间内掌握某种软件操作或编程技能的书籍。这类书籍往往以其高效、快捷的学习路径吸引读者&#xff0c;尤其适合有一定基础或者急需短期内提升特定技能的人群。 然而&#xff0c;“神器”之称则带有主观性和一…

Linux 环境安装Nginx—源码和Dokcer两种安装方式

一、源代码编译安装Nginx 1.下载最新nginx源码 以nginx-1.25.3.tar.gz为例&#xff1a; 可以使用命令(联网)&#xff1a;curl -O http://nginx.org/download/nginx-1.25.3.tar.gz或在官网下载.tar.gz 2.解压缩 tar -zxvf nginx-1.25.3.tar.gz cd nginx-1.25.3/ 3.安装依赖…

【MySQL】DQL-基础查询-语句&演示(查询多个字段 / 所有字段/并设置别名/去重)

前言 大家好吖&#xff0c;欢迎来到 YY 滴MySQL系列 &#xff0c;热烈欢迎&#xff01; 本章主要内容面向接触过C Linux的老铁 主要内容含&#xff1a; 欢迎订阅 YY滴C专栏&#xff01;更多干货持续更新&#xff01;以下是传送门&#xff01; YY的《C》专栏YY的《C11》专栏YY的…

P3369 【模板】普通平衡树(splay 算法)

题目描述 您需要写一种数据结构&#xff08;可参考题目标题&#xff09;&#xff0c;来维护一些数&#xff0c;其中需要提供以下操作&#xff1a; 插入一个数 x。删除一个数 x&#xff08;若有多个相同的数&#xff0c;应只删除一个&#xff09;。定义排名为比当前数小的数的…

【MySQL】DML的表操作详解:添加数据&修改数据&删除数据(可cv例题语句)

前言 大家好吖&#xff0c;欢迎来到 YY 滴MySQL系列 &#xff0c;热烈欢迎&#xff01; 本章主要内容面向接触过C Linux的老铁 主要内容含&#xff1a; 欢迎订阅 YY滴C专栏&#xff01;更多干货持续更新&#xff01;以下是传送门&#xff01; YY的《C》专栏YY的《C11》专栏YY的…

Fastgpt 无法启动或启动后无法正常使用的讨论(启动失败、用户未注册等问题这里)

FastGPT 是一个基于 LLM 大语言模型的知识库问答系统&#xff0c;提供开箱即用的数据处理、模型调用等能力。同时可以通过 Flow 可视化进行工作流编排&#xff0c;从而实现复杂的问答场景&#xff01; FastGPT是非常实用并且相当厉害的个人知识库AI项目&#xff0c;项目是非常…

python练习四

1. 求一个十进制的数值的二进制的0、1的个数 def count_binary_ones(n):binary_str bin(n)[2:] # 转换为二进制字符串&#xff0c;去除前缀0bprint(f"{n} 的二进制为: {binary_str}")return binary_str.count(0), binary_str.count(1) n int(input("输入一个…

20240329-科技咨询:比亚迪第五代DMi;央视AI《周处除三害》;带屏幕苹果耳机爆火

一、比亚迪5月份即将推出第五代DMi技术 近日&#xff0c;比亚迪举行了2023年财报投资人沟通会。会议纪要显示&#xff0c;比亚迪董事长王传福在会上透露&#xff0c;今年5月将推出第五代DMI混动技术&#xff0c;预计馈电油耗将降至2.9升/百公里&#xff0c;而满油满电续航将达…

自建机房私有云吗?

大家好&#xff0c;我是小码哥&#xff0c;之前一种有没搞清楚公有云、私有云的概念&#xff0c;今天算是弄清楚了&#xff0c;这里给大家分享一下公有云、私有云的区别&#xff0c;以及自建机房算不算私有云&#xff01; 其实私有云&#xff08;Private Cloud&#xff09;和公…