当前位置: 首页 > news >正文

前端:VUE2中的父子传值

文章目录

  • 一、背景
  • 什么是父子传值
  • 二、业务场景
    • 子传父
      • 1、在父页面中引入子页面
      • 2、子传父:父组件标识
      • 3、子传父:子组件标识
    • 父传子
    • 父组件调用子组件中的方法
  • 总结:

一、背景

最近做项目中需要使用到流工作,在这里流工作需要用到父子传值,所以对vue中的父子传值进行研究并总结。

什么是父子传值

父子传值是指在程序中父组件向子组件传递数据的过程。在前端开发中,父子组件通常是指父组件包含一个或多个子组件,子组件嵌套在父组件中。

父子传值可以通过props属性来实现。父组件可以通过props将数据传递给子组件,子组件可以通过props接收父组件传递的数据。这样,父组件和子组件之间就可以进行数据的传递和共享。

父组件传递给子组件的数据可以是任意类型,包括基本类型(如字符串、数字、布尔值等)和复杂类型(如对象、数组等)。子组件可以通过props接收父组件传递的数据,并在子组件中使用这些数据进行渲染或其他操作。

父子传值可以实现组件之间的数据共享和通信,使得组件之间可以相互传递和使用数据,提高了组件的复用性和灵活性。通过父子传值,可以实现组件的嵌套和组合,构建出更复杂的界面和功能。

需要注意的是,父子传值是单向的,即父组件可以向子组件传递数据,但子组件不能直接修改父组件传递的数据。如果需要修改父组件的数据,可以通过触发事件或回调函数的方式,将子组件中的数据传递给父组件进行处理。这样可以实现子组件向父组件传递数据的需求。

二、业务场景

比如:现在在子页面中获取后端的返回值,需要把子页面中的值传给父页面。在这里插入图片描述
比如在该图中,子页面获取项目id之后传给父组件。
同理父组件获取值之后传给子组件。

子传父

1、在父页面中引入子页面

引入(import)子页面(根据路径,进行引入)

import bindingRole from "@/views/system/project/authProjectRole.vue";

对应的在compoents中进行注册:

export default {components: {bindingRole},}

在template中写入该页面

<addProject v-show="showStatus[0]" @nextStep="nextStep" @update-project-id="updateProjectId"></addProject>

2、子传父:父组件标识

父子传值需要通过标识进行传值:
这里在父组件中引入的子页面中通过@update-project-id="updateProjectId"进行标识,其中update-project-id是自定义的名称,
updateProjectId是绑定的方法,用于接收子组件传入的值

updateProjectId(newProjectId) {this.newProjectIds = newProjectId},

3、子传父:子组件标识

在页面中通过this.$emit去触发父组件中的标识子组件的方法(update-project-id),这样他们通过update-project-id进行传递信息
子组件中的代码:

this.$emit('update-project-id', this.newProjectId); // 触发自定义事件,将newProjectId值传递给父组件

父传子

<!-- 父组件 -->
<template><div><h1>父组件</h1><ChildComponent :message="message"></ChildComponent></div>
</template><script>
import ChildComponent from './ChildComponent.vue';export default {components: {ChildComponent},data() {return {message: 'Hello, child!'};}
};
</script>
<!-- 子组件 ChildComponent.vue -->
<template><div><h2>子组件</h2><p>{{ message }}</p></div>
</template><script>
export default {props: ['message']
};
</script>

在父组件中,通过:message="message"的方式将父组件中的message数据传递给子组件。子组件中使用props属性来接收父组件传递的值,并在模板中使用{{ message }}来显示传递的值。

通过这种方式,父组件可以将任意类型的数据传递给子组件,并在子组件中使用这些数据进行渲染或其他操作。

需要注意的是,父组件传递给子组件的数据是单向的,子组件不能直接修改父组件传递的数据。如果需要修改父组件的数据,可以通过触发事件或回调函数的方式,将子组件中的数据传递给父组件进行处理。

父组件调用子组件中的方法

同样是在父组件中引入子组件,这里就不详细介绍

<bindingRole ref="myBindingRole" v-show="showStatus[1] " @nextStep="nextStep" @prevStep="prevStep"></bindingRole>

在父组件中的方法中使用this.$refs.myBindingRole.子组件方法();
例如:

this.$refs.myBindingRole.getList(this.newProjectIds);

总结:

在这里插入图片描述
需要注意的是,父子组件传值是单向的,即父组件可以向子组件传递数据,但子组件不能直接修改父组件传递的数据。如果需要修改父组件的数据,可以通过触发事件或回调函数的方式,将子组件中的数据传递给父组件进行处理。

通过父子组件传值,可以实现组件的嵌套和组合,构建出更复杂的界面和功能,提高组件的复用性和灵活性。

这里只是自己接触过的父子传值,还未进行扩展,如果问题请补充或评论!!!

相关文章:

前端:VUE2中的父子传值

文章目录 一、背景什么是父子传值二、业务场景子传父1、在父页面中引入子页面2、子传父&#xff1a;父组件标识3、子传父&#xff1a;子组件标识 父传子父组件调用子组件中的方法 总结&#xff1a; 一、背景 最近做项目中需要使用到流工作&#xff0c;在这里流工作需要用到父子…...

【100天精通python】Day40:GUI界面编程_PyQt 从入门到实战(完)_网络编程与打包发布

目录 8 网络编程 8.1 使用PyQt 网络模块进行网络通信 服务器端示例 客户端示例 8.2 处理网络请求和响应 9 打包和发布 9.1 创建可执行文件或安装程序 9.2 解决依赖问题 9.3 发布 PyQt 应用到不同平台 9.3.1 发布到 Windows 9.3.2 发布到 macOS 9.3.3 发布到 Linux 9…...

Redis——set类型详解

概要 Set&#xff08;集合&#xff09;&#xff0c;将一些有关联的数据放到一起&#xff0c;集合中的元素是无序的&#xff0c;并且集合中的元素是不能重复的 之前介绍的list就是有序的&#xff0c;对于列表来说[1, 2, 3] 和 [2, 1, 3]是两个不同的列表&#xff0c;而对于集合…...

redis---》高级用法之慢查询/pipline与事务/发布订阅/bitmap位图/HyperLogLog/GEO地理位置信息/持久化

高级用法之慢查询 # 配置一个时间&#xff0c;如果查询时间超过了我们设置的时间&#xff0c;我们就认为这是一个慢查询 # 配置的慢查询&#xff0c;只在命令执行阶段# 慢查询演示-设置慢查询---》只要超过某个时间的命令---》都会保存起来# 设置记录所有命令CONFIG SET slowl…...

Find My资讯|苹果Vision Pro开发者需将设备配对 AirTag

最近苹果Vision Pro获开发者申请&#xff0c;苹果要求获批的申请者使用 Measure and Fit 应用确认合适的佩戴尺寸&#xff0c;并会根据申请者提交的信息&#xff0c;定制不同的 Vision Pro 开发者套件&#xff0c;以便于契合申请者的面部特征&#xff0c;提供更好的佩戴体验。 …...

Go 语言中排序的 3 种方法

原文链接&#xff1a; Go 语言中排序的 3 种方法 在写代码过程中&#xff0c;排序是经常会遇到的需求&#xff0c;本文会介绍三种常用的方法。 废话不多说&#xff0c;下面正文开始。 使用标准库 根据场景直接使用标准库中的方法&#xff0c;比如&#xff1a; sort.Intsso…...

12----Emoji表情

本节我们主要讲解markdown的Emoji 在 Markdown 里使用 Emoji 表情有两种方法:一种是直接输入 Emoji 表情&#xff0c;另一种是使用 Emoji 表情短码(emoji shartcodes)。 一、打印方式&#xff1a; 直接输入 Emoji 表情&#xff1a;在 Markdown 中&#xff0c;可以直接输入 Em…...

C++四种强制类型转换

一、C强制转换与C强制转换 c语言强制类型转换主要用于基础的数据类型间的转换&#xff0c;语法为&#xff1a; (type-id)expression//转换格式1 type-id(expression)//转换格式2c除了能使用c语言的强制类型转换外&#xff0c;还新增了四种强制类型转换&#xff1a;static_cas…...

git仓库新建上传记录

新建git仓会出现版本分支问题&#xff0c;解决过程&#xff1a; 其他的前期绑定之类的传送&#xff1a;https://blog.csdn.net/qq_37194189/article/details/130767397 大概思路&#xff1a;新建一个分支&#xff0c;上传&#xff0c;合并&#xff0c;删除分支 git branch …...

flutter调用so

lutter是一种基于Dart语言的跨平台开发框架&#xff0c;通常用于开发Android和iOS应用程序。如果您想要在Flutter应用程序中调用一个SO库&#xff0c;您可以按照以下步骤进行操作&#xff1a; 首先&#xff0c;将您的SO库文件复制到Flutter项目的“lib”目录下。 接下来&…...

c#依赖注入

依赖注入(Dependency Injection,简称 DI)是一种设计模式,用于将对象的创建和管理责任从使用它的类中分离出来,从而实现松耦合和易于测试的代码。在 C# 中,依赖注入通常通过以下方式实现: 构造函数注入(Constructor Injection): 这是最常见的依赖注入方式,通过类的构…...

Django框架使用定时器-APScheduler实现定时任务:django实现简单的定时任务

一、系统环境依赖 系统&#xff1a;windows10 python: python3.9.0 djnago3.2.0 APScheduler3.10.1 二、django项目配置 1、创建utils包&#xff0c;在包里面创建schedulers包 utils/schedulers/task.py #1、设置 Django 环境&#xff0c;就可以导入项目的模型类这些了 …...

Go学习笔记之数据类型

文章目录 GO数据类型数组array切片slice集合map结构体make和new GO数据类型 在go语言中&#xff0c;定义的全局数据结构不使用不会报错&#xff0c;定义的局部数据结构必须使用&#xff0c;否则报错&#xff1b;建议定义的数据类型就要使用&#xff0c;要么不定义。 数组array …...

Spring Cloud 微服务

前言 Spring Cloud 中的所有子项目都依赖Spring Boot框架&#xff0c;所以Spring Boot 框架的版本号和Spring CLoud的版本号之间也存在以来及兼容关系。 Spring Cloud生态下的服务治理的解决方案主要有两个&#xff1a; Spring Cloud Netfix 和 Spring Cloud Alibaba。这两个…...

SpringBoot属性配置

SpringBoot提供了多种属性配置方式 application.properties server.port80 application.yml server:port: 81application.yaml server:port: 82SpringBoot配置文件加载顺序 application.properties > application.yml > application.yaml常用配置文件种类 application.…...

算法通关村第十关 | 归并排序

1. 归并排序原理 归并排序&#xff08;MERARE-SORT&#xff09;简单来说就是将大的序列先视为若干个比较小的数组&#xff0c;分成比较小的结构&#xff0c;然后是利用归并的思想实现的排序方法&#xff0c;该算法采用经典的分治策略&#xff08;分就是将问题分成一些小的问题分…...

SpringBoot3集成Kafka

标签&#xff1a;Kafka3.Kafka-eagle3&#xff1b; 一、简介 Kafka是一个开源的分布式事件流平台&#xff0c;常被用于高性能数据管道、流分析、数据集成和关键任务应用&#xff0c;基于Zookeeper协调的处理平台&#xff0c;也是一种消息系统&#xff0c;具有更好的吞吐量、内…...

css学习1

1、样式定义如何显示元素。 2、样式通常保存至外部的css文件中。 3、样式可以使内容与表现分离。 4、css主要有两部分组成&#xff1a;选择器与一条或多条声明。 选择器通常为要改变的html元素&#xff0c;每条声明由一个属性和一个值组成。每个属性有一个值&#xff0c;属性…...

rust踩雷笔记(1)——切片传参和解引用赋值

最近学习rust&#xff0c;网上资料还是很有限&#xff0c;做题遇到的问题&#xff0c;有时需要自己试验。把自己做题过程遇到的问题&#xff0c;和试验的结论&#xff0c;做一些简单记录。 阅读下列文字和代码 用切片&#xff08;的引用&#xff09;做参数要非常小心&#xff…...

安全 1自测

常见对称加密算法&#xff1a; DES&#xff08;Data Encryption Standard&#xff09;&#xff1a;数据加密标准&#xff0c;速度较快&#xff0c;适用于加密大量数据的场合&#xff1b; 3DES&#xff08;Triple DES&#xff09;&#xff1a;是基于DES&#xff0c;对一块数据用…...

如何在Windows上安装APK文件:APK Installer终极指南

如何在Windows上安装APK文件&#xff1a;APK Installer终极指南 【免费下载链接】APK-Installer An Android Application Installer for Windows 项目地址: https://gitcode.com/GitHub_Trending/ap/APK-Installer APK Installer是一款专为Windows系统设计的Android应用…...

Gemini3.1Pro评估ViT平移不变性:4周MVP路线图

利用 Gemini 3.1 Pro 评估视觉 Transformer 的平移不变性&#xff1a;从机制刻画、对照验证到门控降级与4周MVP路线图“平移不变性&#xff08;Translation Invariance&#xff09;”是视觉 Transformer&#xff08;ViT 等&#xff09;稳健性的核心指标之一&#xff1a;当图像在…...

从碎片化到知识体系:微信读书笔记助手如何重塑你的数字阅读体验

从碎片化到知识体系&#xff1a;微信读书笔记助手如何重塑你的数字阅读体验 【免费下载链接】wereader 一个浏览器扩展&#xff1a;主要用于微信读书做笔记&#xff0c;对常使用 Markdown 做笔记的读者比较有帮助。 项目地址: https://gitcode.com/gh_mirrors/wer/wereader …...

数据笔记:LargeST——如何构建与评估一个面向未来的大规模交通预测基准数据集

1. 为什么我们需要LargeST这样的交通预测基准数据集 交通预测是智慧城市建设的核心技术之一&#xff0c;但长期以来这个领域面临一个尴尬局面&#xff1a;算法模型越来越复杂&#xff0c;却缺乏足够规模和质量的数据来验证其真实效果。这就像给赛车手一辆玩具车来测试性能——模…...

开发AI Agent应用时利用Taotoken实现多模型路由与降级策略

&#x1f680; 告别海外账号与网络限制&#xff01;稳定直连全球优质大模型&#xff0c;限时半价接入中。 &#x1f449; 点击领取海量免费额度 开发AI Agent应用时利用Taotoken实现多模型路由与降级策略 在构建复杂的AI Agent工作流时&#xff0c;应用的稳定性和可用性是关键…...

NotebookLM隐私策略更新暗藏玄机:2024年Q2 TOS第4.7.2条修订背后,3类原始文档正被静默提取用于模型微调?

更多请点击&#xff1a; https://intelliparadigm.com 第一章&#xff1a;NotebookLM隐私数据安全 NotebookLM 是 Google 推出的基于用户上传文档构建个性化 AI 助手的工具&#xff0c;其核心优势在于“本地文档理解”&#xff0c;但所有文档均需上传至 Google 云端处理。这意…...

[安全攻防实验] 环境变量:Set-UID程序中的隐形攻击向量

1. 环境变量与Set-UID程序的安全隐患 在Linux系统中&#xff0c;环境变量就像是一个随身携带的"工具箱"&#xff0c;里面装着各种程序运行时需要的信息。但你可能不知道&#xff0c;这个看似普通的工具箱&#xff0c;在遇到Set-UID程序时&#xff0c;可能会变成黑客…...

通过taotoken审计日志追溯api调用详情与安全分析

&#x1f680; 告别海外账号与网络限制&#xff01;稳定直连全球优质大模型&#xff0c;限时半价接入中。 &#x1f449; 点击领取海量免费额度 通过Taotoken审计日志追溯API调用详情与安全分析 对于将大模型API集成到业务流程中的团队而言&#xff0c;API调用的可见性与可控性…...

别再只盯着wx.login了!SpringBoot后端实战:用getPhoneNumber接口搞定小程序用户手机号绑定

微信小程序用户手机号绑定&#xff1a;SpringBoot后端深度实践指南 在当今移动互联网生态中&#xff0c;微信小程序已成为连接用户与服务的重要桥梁。对于需要强实名认证或直接触达用户的业务场景&#xff08;如电商交易、金融服务、政务办理等&#xff09;&#xff0c;仅依赖w…...

UEFITool终极指南:轻松解析和编辑UEFI固件的开源利器

UEFITool终极指南&#xff1a;轻松解析和编辑UEFI固件的开源利器 【免费下载链接】UEFITool UEFI firmware image viewer and editor 项目地址: https://gitcode.com/gh_mirrors/ue/UEFITool 你是否曾好奇计算机启动时底层发生了什么&#xff1f;想要深入了解UEFI固件的…...