详解vue中在父组件点击按钮触发子组件的事件


Posted in Javascript onNovember 13, 2020

我把这个实例分为几个步骤解读:

1、父组件的button元素绑定click事件,该事件指向notify方法
2、给子组件注册一个ref=“child”
3、父组件的notify的方法在处理时,使用了$refs.child把事件传递给子组件的parentMsg方法,同时携带着父组件中的参数msg
 4、子组件接收到父组件的事件后,调用了parentMsg方法,把接收到的msg放到message数组中

父组件

<template>
 <div id="app">
  <!--父组件-->
  <input v-model="msg" />
  <button v-on:click="notify">广播事件</button>
  <!--子组件-->
  <popup ref="child"></popup>
 </div>
</template>
 <script>
import popup from "@/components/popup";
export default {
 name: "app",
 data: function () {
  return {
   msg: "",
  };
 },
 components: {
  popup,
 },
 methods: {
  notify: function () {
   if (this.msg.trim()) {
    this.$refs.child.parentMsg(this.msg);
   }
  },
 },
};
</script>
 <style>
#app {
 font-family: "Avenir", Helvetica, Arial, sans-serif;
 -webkit-font-smoothing: antialiased;
 -moz-osx-font-smoothing: grayscale;
 text-align: center;
 color: #2c3e50;
 margin-top: 60px;
}
</style>

子组件

<template>
 <div>
  <ul>
   <li v-for="item in messages">父组件输入了:{{ item }}</li>
  </ul>
 </div>
</template>
 <style>
body {
 background-color: #ffffff;
}
</style>
 <script>
export default {
 name: "popup",
 data: function () {
  return {
   messages: [],
  };
 },
 methods: {
  parentMsg: function (msg) {
   this.messages.push(msg);
  },
 },
};
</script>

到此这篇关于详解vue中在父组件点击按钮触发子组件的事件的文章就介绍到这了,更多相关vue 父组件触发子组件内容请搜索三水点靠木以前的文章或继续浏览下面的相关文章希望大家以后多多支持三水点靠木!

Javascript 相关文章推荐
JavaScript入门教程(3) js面向对象
Jan 31 Javascript
10个实用的脚本代码工具
May 04 Javascript
js模拟类继承小例子
Jul 17 Javascript
把文本中的URL地址转换为可点击链接的JavaScript、PHP自定义函数
Jul 29 Javascript
jQuery提示效果代码分享
Nov 20 Javascript
js函数内变量的作用域分析
Jan 12 Javascript
纯javascript模仿微信打飞机小游戏
Aug 20 Javascript
整理Javascript基础入门学习笔记
Nov 29 Javascript
ES6通过babel转码使用webpack使用import关键字
Dec 13 Javascript
jQuery插件HighCharts实现的2D回归直线散点效果示例【附demo源码下载】
Mar 09 Javascript
bootstrap multiselect 多选功能实现方法
Jun 05 Javascript
vue实现动态列表点击各行换色的方法
Sep 13 Javascript
Vue中nprogress页面加载进度条的方法实现
Nov 13 #Javascript
解决vue打包 npm run build-test突然不动了的问题
Nov 13 #Javascript
vue封装自定义指令之动态显示title操作(溢出显示,不溢出不显示)
Nov 12 #Javascript
解决vuex刷新数据消失问题
Nov 12 #Javascript
微信小程序对图片进行canvas压缩的方法示例详解
Nov 12 #Javascript
解决vuex改变了state的值,但是页面没有更新的问题
Nov 12 #Javascript
javascript实现搜索筛选功能实例代码
Nov 12 #Javascript
You might like
全国FM电台频率大全 - 8 黑龙江省
2020/03/11 无线电
php类
2006/11/27 PHP
thinkphp实现发送邮件密码找回功能实例
2014/12/01 PHP
百度工程师讲PHP函数的实现原理及性能分析(三)
2015/05/13 PHP
PHP编程开发怎么提高编程效率 提高PHP编程技术
2015/11/09 PHP
浅析Laravel5中队列的配置及使用
2016/08/04 PHP
js页面跳转的问题(跳转到父页面、最外层页面、本页面)
2013/08/14 Javascript
鼠标移入移出事件改变图片的分辨率的两种方法
2013/12/17 Javascript
解析JSON对象与字符串之间的相互转换
2013/12/18 Javascript
js实现div闪烁原理及实现代码
2014/06/24 Javascript
手机号码,密码正则验证
2014/09/04 Javascript
jQuery动态添加及删除表单上传元素的方法(附demo源码下载)
2016/01/15 Javascript
浅析在javascript中创建对象的各种模式
2016/05/06 Javascript
js轮盘抽奖实例分析
2020/04/17 Javascript
AngularJS  自定义指令详解及实例代码
2016/09/14 Javascript
video.js使用改变ui过程
2017/03/05 Javascript
jQuery Easyui Treegrid实现显示checkbox功能
2017/08/08 jQuery
vscode中vue-cli项目es-lint的配置方法
2018/07/30 Javascript
js针对图片加载失败的处理方法分析
2019/08/24 Javascript
Python3利用Dlib19.7实现摄像头人脸识别的方法
2018/05/11 Python
python_opencv用线段画封闭矩形的实例
2018/12/05 Python
pytorch中的embedding词向量的使用方法
2019/08/18 Python
pytorch使用tensorboardX进行loss可视化实例
2020/02/24 Python
Python面向对象特殊属性及方法解析
2020/09/16 Python
英国女性时尚精品店:THE DRESSING ROOM
2018/05/23 全球购物
Reformation官网:美国女装品牌
2018/09/14 全球购物
Nisbets法国:英国最大的厨房和餐饮设备供应商
2019/03/18 全球购物
个人简历自我评价八例
2013/10/31 职场文书
邮政员工辞职信
2014/01/16 职场文书
优秀高中生事迹材料
2014/02/11 职场文书
营销与策划专业求职信
2014/06/20 职场文书
大型公益活动策划方案
2014/08/20 职场文书
团委工作总结2015
2015/04/02 职场文书
关于调整工作时间的通知
2015/04/24 职场文书
2016大学军训通讯稿
2015/11/25 职场文书
vue实力踩坑之push当前页无效
2022/04/10 Vue.js