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 相关文章推荐
再次更新!MSClass (Class Of Marquee Scroll通用不间断滚动JS封装类 Ver 1.6)
Feb 05 Javascript
jQuery中on()方法用法实例详解
Feb 06 Javascript
jQuery图片特效插件Revealing实现拉伸放大
Apr 22 Javascript
自己动手写的jquery分页控件(非常简单实用)
Oct 28 Javascript
jquery实现图片预加载
Dec 25 Javascript
jQuery获取当前点击的对象元素(实现代码)
May 19 Javascript
jquery.form.js框架实现文件上传功能案例解析(springmvc)
May 26 Javascript
Vue自定义指令拖拽功能示例
Feb 17 Javascript
微信小程序Getuserinfo解决方案图解
Aug 24 Javascript
微信小程序组件传值图示过程详解
Jul 31 Javascript
探究一道价值25k的蚂蚁金服异步串行面试题
Aug 21 Javascript
vue中如何自定义右键菜单详解
Dec 08 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
相对路径转化成绝对路径
2007/04/10 PHP
基于php下载文件的详解
2013/06/02 PHP
基于xcache的配置与使用详解
2013/06/18 PHP
PHP查找一列有序数组是否包含某值的方法
2020/02/07 PHP
利用ajaxfileupload插件实现文件上传无刷新的具体方法
2013/06/08 Javascript
JS实现随机化快速排序的实例代码
2013/08/01 Javascript
Jquery 类网页微信二维码图块滚动效果具体实现
2013/10/14 Javascript
Javascript中的call()方法介绍
2015/03/15 Javascript
学习JavaScript设计模式(代理模式)
2015/12/03 Javascript
简述Matlab中size()函数的用法
2016/03/20 Javascript
第一次动手实现bootstrap table分页效果
2016/09/22 Javascript
JS实现PC手机端和嵌入式滑动拼图验证码三种效果
2017/02/15 Javascript
vue.js内部自定义指令与全局自定义指令的实现详解(利用directive)
2017/07/11 Javascript
小程序自定义日历效果
2018/12/29 Javascript
JavaScript常见鼠标事件与用法分析
2019/01/03 Javascript
javascript关于“时间”的一次探索
2019/07/24 Javascript
layui-select动态选中值的例子
2019/09/23 Javascript
vue 解决移动端弹出键盘导致页面fixed布局错乱的问题
2019/11/06 Javascript
JS document form表单元素操作完整示例
2020/01/13 Javascript
JS中的const命令你真懂它吗
2020/03/08 Javascript
解决vue项目router切换太慢问题
2020/07/19 Javascript
JavaScript代码实现微博批量取消关注功能
2021/02/05 Javascript
pyqt5 禁止窗口最大化和禁止窗口拉伸的方法
2019/06/18 Python
python的pstuil模块使用方法总结
2019/07/26 Python
python连接PostgreSQL过程解析
2020/02/09 Python
打印tensorflow恢复模型中所有变量与操作节点方式
2020/05/26 Python
基于python实现监听Rabbitmq系统日志代码示例
2020/11/28 Python
澳大利亚潮流尖端的快时尚品牌:Cotton On
2016/09/26 全球购物
美国羊皮公司:Overland
2018/01/15 全球购物
GANT英国官方网上商店:甘特衬衫
2018/02/06 全球购物
英国曼彻斯特宠物用品品牌:Bunty Pet Products
2019/07/27 全球购物
应用数学专业求职信
2014/03/14 职场文书
会计员岗位职责
2014/03/15 职场文书
讲党性心得体会
2014/09/03 职场文书
2015年酒店年度工作总结
2015/05/23 职场文书
家长反馈意见及建议
2015/06/03 职场文书