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 相关文章推荐
音乐播放用的的几个函数
Sep 07 Javascript
Javascript 学习笔记 错误处理
Jul 30 Javascript
javascript 限制输入脚本大全
Nov 03 Javascript
删除select中所有option选项jquery代码
Aug 12 Javascript
让网页跳转到指定位置的jquery代码非书签
Sep 06 Javascript
jQuery Validate 校验多个相同name的方法
May 18 jQuery
jQuery获取复选框选中的当前行的某个字段的值
Sep 15 jQuery
vue组件tabbar使用方法详解
Nov 06 Javascript
浅谈webpack性能榨汁机(打包速度优化)
Jan 09 Javascript
koa router 多文件引入的方法示例
May 22 Javascript
vue.js自定义组件实现v-model双向数据绑定的示例代码
Jan 08 Javascript
vue-router之解决addRoutes使用遇到的坑
Jul 19 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 ADODB使用方法集锦
2008/03/25 PHP
php 记录进行累加并显示总时长为秒的结果
2011/11/04 PHP
ThinkPHP3.1新特性之多层MVC的支持
2014/06/19 PHP
PHP Yii框架之表单验证规则大全
2015/11/16 PHP
CI框架源码解读之利用Hook.php文件完成功能扩展的方法
2016/05/18 PHP
CentOS 7.2 下编译安装PHP7.0.10+MySQL5.7.14+Nginx1.10.1的方法详解(mini版本)
2016/09/01 PHP
wordpress自定义标签云与随机获取标签的方法详解
2019/03/22 PHP
奇妙的js
2007/09/24 Javascript
同一页面多个商品倒计时JS 基于面向对象的javascript
2012/02/16 Javascript
javascript 树形导航菜单实例代码
2013/08/13 Javascript
Extjs4中tree的拖拽功能(可以两棵树之间拖拽) 简单实例
2013/12/08 Javascript
jQuery中操控hidden、disable等无值属性的方法
2014/01/06 Javascript
Vue.js每天必学之指令系统与自定义指令
2016/09/07 Javascript
Bootstrap面板(Panels)的简单实现代码
2017/03/17 Javascript
Vue组件tree实现树形菜单
2017/04/13 Javascript
javascript 日期相减-在线教程(附代码)
2017/08/17 Javascript
写给vue新手们的vue渲染页面教程
2017/09/01 Javascript
vue 引入公共css文件的简单方法(推荐)
2018/01/20 Javascript
开发一个Parcel-vue脚手架工具(详细步骤)
2018/09/22 Javascript
elementUI同一页面展示多个Dialog的实现
2020/11/19 Javascript
JavaScript中展开运算符及应用的实例代码
2021/01/14 Javascript
Python实现复杂对象转JSON的方法示例
2017/06/22 Python
磁盘垃圾文件清理器python代码实现
2020/08/24 Python
linux环境下Django的安装配置详解
2019/07/22 Python
python里的单引号和双引号的有什么作用
2020/06/17 Python
英国家喻户晓的折扣商场:TK Maxx
2017/05/26 全球购物
办公室主任职责范文
2013/11/08 职场文书
酒吧副总经理岗位职责
2013/12/10 职场文书
一夜的工作教学反思
2014/02/08 职场文书
就业推荐表自我鉴定范文
2014/03/21 职场文书
合作投资意向书
2014/04/01 职场文书
纪念九一八爱国演讲稿600字
2014/09/14 职场文书
2015年读书月活动总结
2015/03/26 职场文书
安全教育观后感
2015/06/17 职场文书
Python绘制地图神器folium的新人入门指南
2021/05/23 Python
解决vue自定义组件@click点击失效问题
2022/04/30 Vue.js