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 相关文章推荐
让广告代码不再影响你的网页加载速度
Jul 07 Javascript
node.js中的fs.symlinkSync方法使用说明
Dec 15 Javascript
javascript去除字符串左右两端的空格
Feb 05 Javascript
谈谈我对JavaScript DOM事件的理解
Dec 18 Javascript
web前端开发upload上传头像js示例代码
Oct 22 Javascript
jquery pagination分页插件使用详解(后台struts2)
Jan 22 Javascript
详解浏览器渲染页面过程
Feb 09 Javascript
vue resource post请求时遇到的坑
Oct 19 Javascript
详解如何制作并发布一个vue的组件的npm包
Nov 10 Javascript
3分钟读懂移动端rem使用方法(推荐)
May 06 Javascript
VUE写一个简单的表格实例
Aug 06 Javascript
浅谈如何优雅处理JavaScript异步错误
Nov 12 Javascript
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
php一句话cmdshell新型 (非一句话木马)
2009/04/18 PHP
PHP5中新增stdClass 内部保留类
2011/06/13 PHP
php 缩略图实现函数代码
2011/06/23 PHP
ajax取消挂起请求的处理方法
2013/03/18 PHP
PHP中使用sleep函数实现定时任务实例分享
2014/08/21 PHP
Laravel框架实现超简单的分页效果示例
2019/02/08 PHP
css图片自适应大小
2007/11/28 Javascript
javascript smipleChart 简单图标类
2011/01/12 Javascript
读jQuery之十 事件模块概述
2011/06/27 Javascript
javascript实现十六进制颜色值(HEX)和RGB格式相互转换
2014/06/20 Javascript
Javascript函数式编程简单介绍
2015/10/11 Javascript
Jquery轮播效果实现过程解析
2016/03/30 Javascript
JavaScript使用forEach()与jQuery使用each遍历数组时return false 的区别
2016/08/26 Javascript
AngularGauge 属性解析详解
2016/09/06 Javascript
vue实现页面加载动画效果
2017/09/19 Javascript
JavaScript中关于class的调用方法
2017/11/28 Javascript
Vue核心概念Action的总结
2019/01/18 Javascript
vue之组件内监控$store中定义变量的变化详解
2019/11/08 Javascript
利用Python破解验证码实例详解
2016/12/08 Python
Python设置matplotlib.plot的坐标轴刻度间隔以及刻度范围
2019/06/25 Python
pytorch AvgPool2d函数使用详解
2020/01/03 Python
Tensorflow中tf.ConfigProto()的用法详解
2020/02/06 Python
Django调用支付宝接口代码实例详解
2020/04/04 Python
django 数据库 get_or_create函数返回值是tuple的问题
2020/05/15 Python
利用css3-animation实现逐帧动画效果
2016/03/10 HTML / CSS
分享一个页面平滑滚动小技巧(推荐)
2019/10/23 HTML / CSS
canvas画布实现手写签名效果的示例代码
2019/04/23 HTML / CSS
老海军美国官网:Old Navy
2016/09/05 全球购物
TUMI新加坡官网:国际领先的商旅箱包品牌
2019/01/12 全球购物
漫威玩具服装及周边商品官方购物网站:Marvel Shop
2019/05/11 全球购物
Perfume’s Club澳大利亚官网:西班牙领先的在线美容店
2021/02/01 全球购物
信用社员工先进事迹材料
2014/02/04 职场文书
演讲主持词
2014/03/18 职场文书
2015年校医个人工作总结
2015/07/24 职场文书
《打电话》教学反思
2016/02/22 职场文书
如何撰写促销方案?
2019/07/05 职场文书