vue2 组件传递数据

向子组件传递数据通过Props

1.创建子组件

详细步骤:
1.在components创建子组件
2.等父组件接受到参数后通过Props来接受父组件传递过来的数据

<template><div id="app"><h2>title:{{ title }}</h2><p>tips:{{ tips }}</p></div>
</template>
<script>
export default{data(){return{}},props:['title','tips']
}
</script>

2.创建父组件

详细步骤:
1.导入子组件页面路径
2.在components注册组件
3.创建子组件标签
4.在子组件标签接受子组件传递过来的数据

<template><div id="app"><my-component /><!-- <HelloWorld /> --><hello-world /><my-son  title="标题" :tips="tips"/></div>
</template><script>
import HelloWorld from './components/HelloWorld.vue';
import MySon from './components/MySon.vue'
export default{name:'App',components:{HelloWorld,MySon},data(){return{tips:'一个友好的提示语'}}
}
</script><style></style>

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

父传子优化代码

如果传入的prop很多,可以使用传入整体props对象
在这里插入图片描述

案例 父组件输入的内容在子组件展示

子组件
子组件有哪些操作?
1.创建一个新的页面
2.用props来接受父页面传递的参messageFormParent
3.使用{{}} 来展示内容

<template><div id="app"><h3>this is parent component</h3><input type="text" ><p>收到父组件的消息 {{ messageFormParent }}</p></div>
</template>
<script>
export default{data(){return{}},props:['messageFormParent'],
}
</script>

父组件
1.导入子组件页面
2.注册子页面
3.创建子组件标签
4.在子组件标签中 通过v-bind绑定数据,通过messageFormParent传递出去
5.组件中双向数据绑定 :这个是父组件input输入框,子组件也跟着展示,父组件通过v-model来绑定

<template><div id="app"><h3>this is parent component</h3><input type="text" v-model="message"><p>收到子组件的消息</p><my-son :messageFormParent="message" /></div>
</template><script>
import MySon from './components/MySon.vue'
export default{name:'App',components:{MySon},data(){return{message:''}}}
</script><style></style>

案例 子组件输入的内容在父组件展示 两种写法

第一种写法 通过v-bind绑定事件和v-on监听事件

操作步骤
1.子组件input输入框通过v-model双向数据绑定;再通过按键事件来监听输入的内容
2.父组件在子组件标签里通过v-bind绑定事件和v-on监听事件
3.在子组件内通过按键监听事件用$emit来接收父组件传递过来的事件和要给父组件传递过去的参数
4.父组件通过监听事件展示子组件传递过来的数据展示
子组件

<template><div id="app"><h3>子组件页面</h3><!-- 子组件通过v-model双向数据绑定把消息传递给父组件 --><!-- 通过keyup事件来监听这个输入的内容 --><input type="text"  v-model="message" @keyup="send"><p>收到父组件的消息 {{ messageFormParent }}</p></div>
</template>
<script>
export default{data(){return{message:'',}},props:['messageFormParent'],methods:{// 通过$emit向父组件传递消息send(){// reveiveOn:父组件传递过来的事件  message要传递的参数this.$emit('reveive',this.message)}}
}
</script>

父组件

<template><div id="app"><h3>父组件页面</h3><input type="text" v-model="message"><p>接收到子组件的消息:{{ messageChild }}</p><my-son :messageFormParent="message" v-on:reveive ="reveive"/></div>
</template><script>
import MySon from './components/MySon.vue'
export default{name:'App',components:{MySon},data(){return{message:'',messageChild:'',}},methods:{// 接受一个自定义事件来接收函数reveive(data){// 接受子组件传递过来的参数this.messageChild = data}}}
</script><style></style>

也可以通过v-model 双向数据绑定绑定

子组件

<template><div id="app"><h3>子组件页面</h3><!-- 子组件通过v-model双向数据绑定把消息传递给父组件 --><!-- 通过keyup事件来监听这个输入的内容 --><input type="text"  v-model="message" @keyup="send"><!-- <p>收到父组件的消息 {{ messageFormParent }}</p> --><p>收到父组件的消息 {{ value  }}</p></div>
</template>
<script>
export default{data(){return{message:'',}},// props:['messageFormParent'],props:['value'],methods:{// 通过$emit向父组件传递消息send(){// reveiveOn:父组件传递过来的事件  message要传递的参数this.$emit('input',this.message)}}
}
</script>

父组件

<template><div id="app"><h3>父组件页面</h3><input type="text" v-model="message"><p>接收到子组件的消息:{{ messageChild }}</p><!-- <my-son :messageFormParent="message" v-on:reveive ="reveive"/> --><my-son v-model="messageChild"/></div>
</template><script>
import MySon from './components/MySon.vue'
export default{name:'App',components:{MySon},data(){return{message:'',messageChild:'',}},methods:{// 接受一个自定义事件来接收函数reveive(data){// 接受子组件传递过来的参数this.messageChild = data}}}
</script><style></style>

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

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

相关文章

androidStudio版本下载链接记录

androidStudio 最新官网版本&#xff1a; 下载 Android Studio 和应用工具 - Android 开发者 | Android DevelopersAndroid Studio 提供了一些应用构建器以及一个已针对 Android 应用进行优化的集成式开发环境 (IDE)。立即下载 Android Studio。https://developer.android.g…

数字化时代的智能支持:亚马逊云科技轻量应用服务器技术领先

轻量应用服务器是一种简化运维、门槛低的弹性服务器&#xff0c;它的"轻"主要体现在几个方面&#xff1a;开箱即用、应用优质、上手简洁、投入划算、运维简便以及稳定可靠。相较于普通的云服务器&#xff0c;轻量应用服务器简化了云服务的操作难度、使用和管理流程&a…

MAC苹果笔记本电脑如何彻底清理垃圾文件软件?

苹果电脑以其流畅的操作系统和卓越的性能而备受用户喜爱。然而&#xff0c;随着时间的推移&#xff0c;系统可能会积累大量垃圾文件&#xff0c;影响性能。本文将介绍苹果电脑怎么清理垃圾文件的各种方法&#xff0c;以提升系统运行效率。 CleanMyMac X是一款专业的Mac清理软件…

轻量级web开发框架Flask本地部署及无公网ip远程访问界面

文章目录 前言1. 安装部署Flask2. 安装Cpolar内网穿透3. 配置Flask的web界面公网访问地址4. 公网远程访问Flask的web界面 前言 本篇文章讲解如何在本地安装Flask&#xff0c;以及如何将其web界面发布到公网上并进行远程访问。 Flask是目前十分流行的web框架&#xff0c;采用P…

华为云之ECS云产品快速入门

华为云之ECS云产品快速入门 一、ECS云服务器介绍二、本次实践目标三、创建虚拟私有云VPC1.虚拟私有云VPC介绍2.进入虚拟私有云VPC管理页面3.创建虚拟私有云4.查看创建的VPC 四、创建弹性云服务器ECS——Linux1.进入ECS购买界面2.创建弹性云服务器(Linux)——基础配置步骤3.创建…

杰发科技AC7840——在Eclipse环境下使用Jlink调试

序 杰发给的代码里面已经做代码相关配置&#xff0c;搭建好eclipse环境即可运行&#xff0c;搭建步骤还是比较简单的。 参考文章 如何使用Eclipse搭配JLink来调试HelloWold应用程序&#xff1f;-电子发烧友网 软件链接 杰发科技Eclipse的sample代码里面的doc文章&#xff…

大模型赋能“AI+电商”,景联文科技提供高质量电商场景数据

据新闻报道&#xff0c;阿里巴巴旗下淘天集团和国际数字商业集团都已建立完整的AI团队。 淘天集团已经推出模特图智能生成、官方客服机器人、万相台无界版等AI工具&#xff0c;训练出了自己的大模型产品 “星辰”&#xff1b; 阿里国际商业集团已成立AI Business&#xff0c;…

c语言力扣题目:消失的数字(有关时间复杂度O(N²)O(N))以及对异或操作符的更深入的理解(如何用人脑的十进制去考量二进制)

目录 Way One :暴力求解,时间复杂度为 O(N) 代码1 Way Two : 时间复杂度限制到 O(N) 代码及其详解 如题 Way One :暴力求解,时间复杂度为 O(N) 大体思路:比如这里我们需要处理的整型数组是"3,0,1",我们可以用冒泡排序或者 qsort函数将他从大到小进行排序成"…

c# winform chart 单个柱形设置

目前实现到第三张图形,有可以实现四张图形的请大佬帮助。 实现到第三张图的设置如下 private void Form1_Load(object sender, EventArgs e) {// 隐藏标题//chart1.Titles.Clear();// 隐藏图例chart1.Legends.Clear();// 隐藏 Y 轴的网格线和标签chart1.ChartAreas[0].AxisY.…

ansible在ubuntu下的安装和使用

ansible在ubuntu下的安装和使用 本文目录 ansible在ubuntu下的安装和使用安装和配置虚拟机配置安装和验证 简单使用创建 ansible cfg 和 inventory 文件创建剧本并执行使用 ansible vault 加密 安装和配置 中文文档&#xff1a;http://www.ansible.com.cn/docs/intro_installa…

试图加载格式不正确的程序。 (异常来自 HRESULT:0x8007000B)

试图加载格式不正确的程序。 (异常来自 HRESULT:0x8007000B) c#调用动态库是报错 目前平台改为x64

字符串函数内存函数(从零到一)【C语言】

长度不受限制的字符串函数&#xff1a;strcpy,strcat,strcmp 长度受限制的字符串函数&#xff1a;strncpy,strncat,strncmp strlen strlen函数是库函数中我们最常使用的函数&#xff0c;它可以求出字符串的长度(不包含‘\0’) 使用方法 通过前面对strlen函数的模拟实现我们知…

智能优化算法应用:基于饥饿游戏算法3D无线传感器网络(WSN)覆盖优化 - 附代码

智能优化算法应用&#xff1a;基于饥饿游戏算法3D无线传感器网络(WSN)覆盖优化 - 附代码 文章目录 智能优化算法应用&#xff1a;基于饥饿游戏算法3D无线传感器网络(WSN)覆盖优化 - 附代码1.无线传感网络节点模型2.覆盖数学模型及分析3.饥饿游戏算法4.实验参数设定5.算法结果6.…

xcode无线真机调试详细图文步骤

步骤一、 步骤二&#xff1a; 步骤三&#xff1a; 配置完到这里&#xff0c;点击真机右键&#xff0c;菜单栏并未出现connect via ip address 选项&#xff0c;也没出现无线连接的小地球图标&#xff0c;别慌&#xff0c;接着进行下一步操作即可。 步骤四&#xff1a; 1.打开…

【Linux】冯诺依曼体系结构与操作系统及其进程

> 作者简介&#xff1a;დ旧言~&#xff0c;目前大二&#xff0c;现在学习Java&#xff0c;c&#xff0c;c&#xff0c;Python等 > 座右铭&#xff1a;松树千年终是朽&#xff0c;槿花一日自为荣。 > 目标&#xff1a;了解冯诺依曼体系结构与操作系统&#xff0c;掌握…

使用ultralytics(YOLOv8)实现RT-Detr

b站视频&#xff1a;https://www.bilibili.com/video/BV12C4y1S75H/ 1 使用ultralytics&#xff08;YOLOv8&#xff09;实现RT-Detr https://github.com/ultralytics/ultralytics/blob/a5735724c54a9f5bcb239c151fefbd1337d7123d/docs/zh/models/rtdetr.md 2 安装 YOLOv8安装…

分享一个项目——Sambert UI 声音克隆

文章目录 前言一、运行ipynb二、数据标注三、训练四、生成总结 前言 原教程视频 项目链接 运行一个ipynb&#xff0c;就可操作 总共四步 1&#xff09;运行ipynb 2&#xff09;数据标注 3&#xff09;训练 4&#xff09;生成 一、运行ipynb 等运行完毕后&#xff0c;获得该…

【powershell】Windows环境powershell 运维之历史文件压缩清理

&#x1f984; 个人主页——&#x1f390;开着拖拉机回家_Linux,大数据运维-CSDN博客 &#x1f390;✨&#x1f341; &#x1fa81;&#x1f341;&#x1fa81;&#x1f341;&#x1fa81;&#x1f341;&#x1fa81;&#x1f341; &#x1fa81;&#x1f341;&#x1fa81;&am…

关于“Python”的核心知识点整理大全31

目录 12.4.2 在屏幕上绘制飞船 alien_invasion.py ​编辑12.5 重构&#xff1a;模块 game_functions 12.5.1 函数 check_events() game_functions.py alien_invasion.py 12.5.2 函数 update_screen() game_functions.py alien_invasion.py 12.6 驾驶飞船 12.6.1 响应…

虚拟机类加载机制

虚拟机类加载机制 什么是虚拟机的类加载机制&#xff1f; Java虚拟机将描述类的Class文件加载到内存中&#xff0c;并对数据进行校验、转换解析和初始化&#xff0c;最终形成可以被虚拟机直接使用的Java类型&#xff0c;这个过程叫做虚拟机的类加载机制 类加载的时机 一个类…