Vue $emit $refs子父组件间方法的调用实例


Posted in Javascript onSeptember 12, 2018

1、$emit

子组件调用父组件的方法并传递数据

注意:子组件标签中的时间也不区分大小写要用“-”隔开

子组件:

<template>
 <button @click="emitEvent">点击我</button>
</template>
<script>
 export default {
 data() {
  return {
  msg: "我是子组件中的数据"
  }
 },
 methods: {
  emitEvent(){
  this.$emit('my-event', this.msg)
  //通过按钮的点击事件触发方法,然后用$emit触发一个my-event的自定义方法,传递this.msg数据。
  }
 }
 }
</script>

父组件:

<template>
 <div id="app">
 <child-a @my-event="getMyEvent"></child-a>
 <!--父组件中通过监测my-event事件执行一个方法,然后取到子组件中传递过来的值-->
 </div>
</template>
<script>
 import ChildA from './components/child.vue'
 export default {
 components: {
  ChildA
 },
 methods: {
  getMyEvent(msg){
   console.log('接收的数据--------->'+msg)//接收的数据--------->我是子组件中的数据
  }
 }
 }
</script>

2、$refs

父组件调用子组件的方法,可以传递数据

注意:子组件标签中的时间也不区分大小写要用“-”隔开

父组件:

<template>
 <div id="app">
 <child-a ref="child"></child-a>
 <!--用ref给子组件起个名字-->
 <button @click="getMyEvent">点击父组件</button>
 </div>
</template>
<script>
 import ChildA from './components/child.vue'
 export default {
 components: {
  ChildA
 },
 data() {
  return {
  msg: "我是父组件中的数据"
  }
 },
 methods: {
  getMyEvent(){
   this.$refs.child.emitEvent(this.msg);
   //调用子组件的方法,child是上边ref起的名字,emitEvent是子组件的方法。
  }
 }
 }
</script>

子组件:

<template>
 <button>点击我</button>
</template>
<script>
 export default {
 methods: {
  emitEvent(msg){
  console.log('接收的数据--------->'+msg)//接收的数据--------->我是父组件中的数据
  }
 }
 }
</script>

以上这篇Vue $emit $refs子父组件间方法的调用实例就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持三水点靠木。

Javascript 相关文章推荐
JS获取整个页面文档的实现代码
Dec 15 Javascript
js处理表格对table进行修饰
May 26 Javascript
介绍JavaScript中Math.abs()方法的使用
Jun 14 Javascript
JavaScript和JQuery的鼠标mouse事件冒泡处理
Jun 19 Javascript
超赞的动手创建JavaScript框架的详细教程
Jun 30 Javascript
js实现滑动到页面底部自动加载更多功能
Feb 15 Javascript
JS去掉字符串末尾的标点符号及删除最后一个字符的方法
Oct 24 Javascript
微信小程序swiper使用网络图片不显示问题解决
Dec 13 Javascript
JavaScript观察者模式原理与用法实例详解
Mar 10 Javascript
JS内置对象和Math对象知识点详解
Apr 03 Javascript
部署vue+Springboot前后端分离项目的步骤实现
May 31 Javascript
浅谈Vue的computed计算属性
Mar 21 Vue.js
bootstrap table表格插件之服务器端分页实例代码
Sep 12 #Javascript
详解html-webpack-plugin插件(用法总结)
Sep 12 #Javascript
解决Vue.js父组件$on无法监听子组件$emit触发事件的问题
Sep 12 #Javascript
vue elementUI tree树形控件获取父节点ID的实例
Sep 12 #Javascript
Vue.js 十五分钟入门图文教程
Sep 12 #Javascript
Vue通过ref父子组件拿值方法
Sep 12 #Javascript
webpack4 升级迁移的实现
Sep 12 #Javascript
You might like
建立文件交换功能的脚本(一)
2006/10/09 PHP
并发下常见的加锁及锁的PHP具体实现代码
2010/10/12 PHP
ThinkPHP发送邮件示例代码
2016/10/08 PHP
laravel实现分页样式替换示例代码(增加首、尾页)
2017/09/22 PHP
Laravel框架使用Seeder实现自动填充数据功能
2018/06/13 PHP
JavaScript的单例模式 (singleton in Javascript)
2010/06/11 Javascript
基于JQuery的一句话搞定手风琴菜单
2012/09/14 Javascript
JavaScript:Div层拖动效果实例代码
2013/08/06 Javascript
jquery实现点击消失的代码
2014/03/03 Javascript
使用jQuery不判断浏览器高度解决iframe自适应高度问题
2014/12/16 Javascript
Javascript中的arguments与重载介绍
2015/03/15 Javascript
JavaScript DOM基础
2015/04/13 Javascript
Js的Array数组对象详解
2016/02/22 Javascript
Sea.JS知识总结
2016/05/05 Javascript
基于WebUploader的文件上传js插件
2016/08/19 Javascript
简单理解vue中track-by属性
2016/10/26 Javascript
es6中的解构赋值、扩展运算符和rest参数使用详解
2017/09/28 Javascript
基于 flexible 的 Vue 组件:Toast -- 显示框效果
2017/12/26 Javascript
JS中的两种数据类型及实现引用类型的深拷贝的方法
2018/08/12 Javascript
vue 解决form表单提交但不跳转页面的问题
2019/10/30 Javascript
element中table高度自适应的实现
2020/10/21 Javascript
python thread 并发且顺序运行示例
2009/04/09 Python
Python计算一个文件里字数的方法
2015/06/15 Python
对Pandas DataFrame缺失值的查找与填充示例讲解
2018/11/06 Python
python实现字符串加密成纯数字
2019/03/19 Python
解决pycharm运行程序出现卡住scanning files to index索引的问题
2019/06/27 Python
Python实现数值积分方式
2019/11/20 Python
django-利用session机制实现唯一登录的例子
2020/03/16 Python
Python迭代器协议及for循环工作机制详解
2020/07/14 Python
HTML5到底会有什么发展?HTML5的前景展望
2015/07/07 HTML / CSS
酒店led欢迎词
2014/01/09 职场文书
2014年班级工作总结
2014/11/14 职场文书
nginx反向代理时如何保持长连接
2021/03/31 Servers
浅谈Redis在直播场景的实践方案
2021/04/27 Redis
vue实现省市区联动 element-china-area-data插件
2022/04/22 Vue.js
Win11怎么解除儿童账号限制?Win11解除微软儿童账号限制方法
2022/07/07 数码科技