详解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 相关文章推荐
Flexigrid在IE下不显示数据的处理的解决方法
Oct 24 Javascript
js获取时间(本周、本季度、本月..)
Nov 22 Javascript
jQuery避免$符和其他JS库冲突的方法对比
Feb 20 Javascript
jquery中子元素和后代元素的区别示例介绍
Apr 02 Javascript
js中的json对象详细介绍
Oct 29 Javascript
JS+CSS实现鼠标滑过时动态翻滚的导航条效果
Sep 24 Javascript
浅谈JQuery+ajax+jsonp 跨域访问
Jun 25 Javascript
jquery hover 不停闪动问题的解决方法(亦为stop()的使用)
Feb 10 Javascript
详解使用React.memo()来优化函数组件的性能
Mar 19 Javascript
jQuery zTree树插件的使用教程
Aug 16 jQuery
vue把输入框的内容添加到页面的实例讲解
Nov 11 Javascript
解决nuxt页面中mounted、created、watch执行两遍的问题
Nov 05 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
Laravel实现用户注册和登录
2015/01/23 PHP
PHP批量删除jQuery操作
2017/07/23 PHP
Laravel5.1 框架数据库操作DB运行原生SQL的方法分析
2020/01/07 PHP
解析js如何获取当前url中的参数值并复制给input
2013/06/23 Javascript
wap手机图片滑动切换特效无css3元素js脚本编写
2014/07/28 Javascript
javascript自定义函数参数传递为字符串格式
2014/07/29 Javascript
javascript实现可全选、反选及删除表格的方法
2015/05/15 Javascript
jQuery实现点击水纹波动动画
2016/04/10 Javascript
JavaScript操作 url 中 search 部分方法函数
2016/06/15 Javascript
vue中渐进过渡效果实现
2016/10/27 Javascript
Vue响应式原理深入解析及注意事项
2017/12/11 Javascript
微信小程序配置服务器提示验证token失败的解决方法
2019/04/03 Javascript
vue+elementUI 复杂表单的验证、数据提交方案问题
2019/06/24 Javascript
微信小程序 搜索框组件代码实例
2019/09/06 Javascript
Vue v-text指令简单使用方法示例
2019/09/19 Javascript
Vue获取页面元素的相对位置的方法示例
2020/02/05 Javascript
js实现双色球效果
2020/08/02 Javascript
[02:53]DOTA2英雄昆卡基础教程
2013/11/25 DOTA
django多个APP的urls设置方法(views重复问题解决)
2019/07/19 Python
20行Python代码实现视频字符化功能
2020/04/13 Python
python 识别登录验证码图片功能的实现代码(完整代码)
2020/07/03 Python
纯CSS和jQuery实现的在页面顶部显示的进度条效果2例(仿手机浏览器进度条效果)
2014/04/16 HTML / CSS
浅谈HTML5 Web Worker的使用
2018/01/05 HTML / CSS
Java 中访问数据库的步骤?Statement 和PreparedStatement 之间的区别?
2012/06/05 面试题
如何做好总经理助理
2013/11/12 职场文书
电气专业推荐信范文
2013/11/18 职场文书
寒假思想汇报
2014/01/10 职场文书
贷款委托书范本
2014/04/08 职场文书
横店影视城导游词
2015/02/06 职场文书
就业推荐表院系意见
2015/06/05 职场文书
2016教师学习教育法心得体会
2016/01/19 职场文书
OpenCV-Python实现轮廓的特征值
2021/06/09 Python
python中的class_static的@classmethod的巧妙用法
2021/06/22 Python
MySQL图形化管理工具Navicat安装步骤
2021/12/04 MySQL
Nginx禁止ip访问或非法域名访问
2022/04/07 Servers
高通2023 年将发布高性能PC处理器
2022/04/29 数码科技