Vue之组件之间的数据传递

Vue的组件作用域都是孤立的,不允许在子组件的模板内直接引用父组件的数据,必须使用特定的方法才能实现组件之间的数据传递。

下列为在vue-cli创建项目中的操作

一·父组件向子组件传递数据

在Vue中,用props向子组件传递数据。

子组件部分:
 1 <template>
 2     <div class='header'>{{logo}}</div>
 5 </template>
 6 <script>
 7      export default{
 8           name:"headerDiv",
 9           data(){
10                   return {
11                        ............ 
12                   }
13           },
14           props:["logo"]
15      }
16 </script> 

如果需要从父组件获取logo值,就需要使用props:['logo']

在props中添加了元素之后,就不需要在data中再添加变量了

父组件部分:

 1 <template>
 2      <div id='app'>
 3            <HeaderDiv :logo="logoMsg"></HeaderDiv>
 4      </div>
 5 </template>
 6 <script>
 7      import HeaderDiv from './compontents/header'
 8 
 9      export default{
10            name:'app',
11            data(){
12                  return {
13                        logoMsg:'VUE'
14                  }
15            },
16            components:{
17                 HeaderDiv
18            }
19      }
20 </script>

 二·子组件向父组件传递数据

子组件主要通过事件传递数据给父组件

子组件部分:

 1 <template>
 2      <div class='header'>
 3            <input v-model="name" @change="getCh">
 4      </div>
 5 </template>
 6 <script>
 7      export default {
 8          name:'header',
 9          data(){
10                 return {
11                        name:'' 
12                 }
13          },
14          methods:{
15                getCh:function(){
16                     this.$emit('setCh',this.name)
17                }
18          }
19      }
20 </script>

当name变化时,将name传给父组件,

在getCh中用$emit来遍历setCh事件,并返回this.name

setCh是一个自定义事件,this.name通过该事件传递给父组件

父组件部分:

<template><div id='app'><HeaderDiv @trans='getCh'></HeaderDiv><div>{{user}}</div></div>
</template>
<script>import  HeaderDiv from './components/header'export  default {name:'app',data(){return {name:''}},methods:{getCh(msg){this.name=msg}},components:{HeaderDiv}} 
</script>

 三·子组件互相传值

1.在main.js里全局定义eventBus

2.firstchild.vue

<template><div><button @click="btn">我是子组件一</button></div>
</template>
<style type="text/css"></style>
<script type="text/javascript">export default{name:'Firstchild',methods:{btn(){console.log('start');eventBus.$emit('name','hello')}}}
</script>

3.secondchild.vue

<template><div><button @click="btn2">我是子组件二</button></div>
</template>
<style type="text/css"></style>
<script type="text/javascript">export default{name:'Secondchild',methods:{btn2(){console.log('end');eventBus.$on('name',function(val){console.log('我是firstchild组件传过来的'+val)})}}}
</script>  

 运行结果

 

转载于:https://www.cnblogs.com/wdxue/p/7541672.html

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

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

相关文章

偶然发现一个大佬写的 React 脚手架,叫Moderate, 用起来很方便

发现一个大佬写的 React 脚手架&#xff0c;叫Moderate, 用起来很方便 Moderate&#xff0c;意思为适中的&#xff0c;适度的&#xff0c;用这个作为代号&#xff0c;主要取决于他的本名“中用”&#xff0c;其一以贯之的想法就是中庸&#xff0c;秉承着以人为本的态度&#xf…

案例 自动办公_1300张办公系列前台参考图,请您查收!

设计情报局室内设计师的灵感聚集地关注一个有格调的空间必定有一处高颜值的前台漂亮的前台很重要...是空间给人的第一印象一个独一无二的前台设计还可以提升整个空间的气质与逼格连个漂亮的前台都没有作为颜控界扛把子的设计师们还怎么混&#xff1f;SO今天小编给大家带来一份《…

iframe里面的元素触发父窗口元素事件的jquery代码 转

例如父窗口定义了一个事件。 top: $(dom1).bind(topEvent, function(){}); 那么iframe里面的元素怎样触发父窗口dom1的事件呢&#xff1f;这样吗&#xff1f; $(dom1, parent.document).trigger(topEvent); 看似正确&#xff0c;实则误导人。 因为父窗口的jquery对象与iframe里…

mplayer 所支持的音视频编解码

这里我把mplayer 所支持的音视频编解码都罗列出来&#xff0c;方便大家查阅&#xff1b;-----------------------------------------------------------------------------------------------Video codecs:Working video codecscodec namefourcccodecfileoutcommentsFFmpeg Zip…

使用ifconfig取出网卡eth0的ip地址

方法1&#xff1a;sed命令12[rootoldboyedu ~]# ifconfig eth0 |sed -n 2p |seds#^.*addr:##g|sed s# B.*$##g10.0.0.50方法2&#xff1a;cut12[rootoldboyedu ~]# ifconfig eth0|grep inetaddr|cut -d ":" -f2|cut -d " " -f110.0.0.50方法3&#xff1a;…

目标检测_目标检测 | Anchor free的目标检测进阶版本

今天说的是《Soft Anchor-Point Object Detection》&#xff0c;其也是最近关于anchor free的目标检测的论文&#xff0c;作者来自于CMU&#xff0c;一作同样也是FSAF(2019 CVPR)的作者。该论文的出发点还是在样本选择和FPN特征选择层面。背景Anchor free是目标检测领域的一个研…

Colly实现豆瓣电影Top250爬取

使用 Colly 实现 豆瓣电影Top250爬取 package mainimport ("encoding/csv""github.com/PuerkitoBio/goquery""github.com/gocolly/colly""log""os""strings""time" )type Movie struct {idx string…

homework1

一.什么是RUP?二.什么是XP?三.什么是敏捷过程&#xff1f; 一。什么是RUP?RUP是一种完整而且完美的软件过程 1。最佳实践 &#xff08;1&#xff09;迭代式开发 &#xff08;2&#xff09;管理需求 &#xff08;3&#xff09;使用基于构件软件的体系结构 &#xff08;4&…

编程:休息片刻的好处

原文作者 Axel Rauschmayer 是一位居住在德国慕尼黑的自由软件工程师。他在这篇博文列举了在编程期间休息片刻的一些好处。 你会更精明而不是更卖力地工作。我曾经为了一个功能的实现而卖力工作过。每天12小时&#xff0c;整整工作了两个星期。我付出了很多努力。那两个星期之…

五个温度带的分界线_女神建筑师在拿破仑故乡打造的海景别墅,超美!超有温度!【环球设计2225期】...

生活的温度 法国建筑师阿米莉亚塔维拉(Amelia Tavella)一直对设计充满热情&#xff0c;她出生在阿雅克肖市&#xff0c;在巴黎的建筑学院学习建筑专业&#xff0c;如今她居住普罗旺斯地区的艾克斯。她说&#xff1a;“设计让我涉足很多有趣的领域并能充分发挥我的想象力。这是一…

1118. Birds in Forest (25)

并查集。。。要用路径压缩&#xff0c;不然会超时&#xff0c; #include<iostream> #include<string> #include<map> #include<vector> #include<algorithm> #include<queue> #include<set> #include<stack> using namespace …

Java线程池有哪些作用

线程池 线程池的作用 核心点:复用机制提前创建好固定的线程一直在运行状态实现复用限制线程创建数量。 1.降低资源消耗:通过池化技术重复利用已创建的线程&#xff0c;降低线程创建和销毁造成的损耗。 2.提高响应速度:任务到达时&#xff0c;无需等待线程创建即可立即执行。…

中国重名的市辖区

中国重名的市辖区 截止2016年7月31日 新华区(3) 河北省石家庄市新华区 河北省沧州市新华区 河南省平顶山市新华区 桥西区(3) 河北省石家庄市桥西区 河北省邢台市桥西区 河北省张家口市桥西区 海州区(2) 辽宁省阜新市海州区 江苏省连云港市海州区 郊区(4) 山西省阳泉市郊区 山西…

安卓关于图片压缩的那些事儿,希望给每个安卓开发人员一些帮助

从事安卓开发也有几年了,本人喜欢开门见山,此篇文章是处理以java语言下的安卓开发过程中图片压缩问题。 图片加载在我们的开发过程中都是一个内存大户,以至于我们加载每一个图片bitmap对象的时候都应该进行回收以减少内存的占用&#xff0c;而如果单张图片的大小加载在内存都会…

银行it现状调研_中央银行系统行业现状调研分析及发展趋势预测报告(2019年版)...

QYResearch预测&#xff1a;2019-2025全球与中国中央银行系统市场现状及未来发展趋势【纸版价格】&#xff1a;RMB 15000【电子版(PDF)价格】&#xff1a;RMB 15000【报告篇幅】&#xff1a;112【报告图表数】&#xff1a;158【报告出版时间】&#xff1a;2019年11月报告摘要本…

视频编解码技术小结

1、什么是H.261编码协议 答&#xff1a;H.261是最早出现的视频编码建议&#xff0c;它采用的算法结合了可减少时间冗余的帧间预测和可减少空间冗余的DCT变换的混合编码方法&#xff0c;其输出码率是p64kbit/s。p取值较小时&#xff0c;只能传清晰度不太高的图像&#…

fiber报错 (type *big.Int has no field or method FillBytes)

如何绕过dgrijalva/jwt go中的cve-2020-26160漏洞 go jwt jwt-go由于存在一个高级漏洞&#xff0c;Gitlab管道中无法传递容器安全状态。此漏洞为jwt-go&#xff0c;安装的版本为v3.2.0incompatible。错误标题如下&#xff1a;jwt-go: access restriction bypass vulnerability…

基于BISS0001构成的热释电红外延时照明控制器电路图

BISS0001是采用CMOS数模混合结构、具有DIP-16和SOIC-16两种封装的热释电红外传感信号处理集成电路。芯片内部集成了电压比较器、状态控制器、延时电路定时器、封锁时间定时器以及参考电压源等电路&#xff0c;常用于防盗报警器、自动门等各种自动开关。利用BISS0001构成的热释电…

安卓APP破解利器之FRIDA

本文讲的是安卓APP破解利器之FRIDA&#xff0c;在我去年参加RadareCon大会的时候&#xff0c;我了解到了一个动态的二进制插桩框架——Frida。起初我觉得它似乎只有一丁点趣味&#xff0c;后来经过实践才发现它原来是如此的有趣。记得游戏里的上帝模式吗&#xff1f;这就是Frid…

如何获取option的下标和值_数智化时代下,如何获取企业增长密码?

信息化时代下&#xff0c;很多企业前前后后上线了各种信息化系统&#xff0c;ERP、OA、CRM…随着企业数字化的深入推进&#xff0c;“移动互联网、云计算、大数据、人工智能、物联网、区块链”等技术的革新&#xff0c;这些信息化系统难以满足企业对数智化转型的新需求&#xf…