详解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 相关文章推荐
jquery限制输入字数,并提示剩余字数实现代码
Dec 24 Javascript
connect中间件session、cookie的使用方法分享
Jun 17 Javascript
Node.js编码规范
Jul 14 Javascript
jQuery验证插件validate使用方法详解
Sep 13 Javascript
JavaScript_ECMA5数组新特性详解
Jun 12 Javascript
JavaScript基于自定义函数判断变量类型的实现方法
Nov 23 Javascript
详谈DOM简介及节点、属性、查找节点的方法
Nov 16 Javascript
封装微信小程序http拦截器过程解析
Aug 13 Javascript
ES6中let、const的区别及变量的解构赋值操作方法实例分析
Oct 15 Javascript
vue实现购物车选择功能
Jan 10 Javascript
Angular 多模块项目构建过程
Feb 13 Javascript
解决Vue大括号字符换行踩的坑
Nov 09 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
冰滴咖啡制作步骤
2021/03/03 冲泡冲煮
谈谈PHP的输入输出流
2007/02/14 PHP
fleaphp下不确定的多条件查询的巧妙解决方法
2008/09/11 PHP
一键生成各种尺寸Icon的php脚本(实例)
2017/02/08 PHP
PHP获取当前日期及本周一是几月几号的方法
2017/03/28 PHP
XHTML下,JS浮动代码失效的问题
2009/11/12 Javascript
33种Javascript 表格排序控件收集
2009/12/03 Javascript
jQuery 类twitter的文本字数限制带提示效果插件
2010/04/16 Javascript
JS数组的赋值介绍
2014/03/10 Javascript
node.js开发中使用Node Supervisor实现监测文件修改并自动重启应用
2014/11/04 Javascript
jQuery手机拨号界面特效代码分享
2015/08/27 Javascript
JQuery日历插件My97DatePicker日期范围限制
2016/01/20 Javascript
JavaScript DOM节点操作方法总结
2016/08/23 Javascript
ES6新特性三: Generator(生成器)函数详解
2017/04/21 Javascript
vue.js获取数据库数据实例代码
2017/05/26 Javascript
jQuery实现菜单栏导航效果
2017/08/15 jQuery
详解组件库的webpack构建速度优化
2018/06/18 Javascript
vue监听键盘事件的快捷方法【推荐】
2018/07/11 Javascript
Node.js 使用axios读写influxDB的方法示例
2018/10/26 Javascript
使用vue-cli webpack 快速搭建项目的代码
2018/11/21 Javascript
使用JS实现动态时钟
2020/03/12 Javascript
微信小程序实现单个或多个倒计时功能
2020/11/01 Javascript
浅析python递归函数和河内塔问题
2017/04/18 Python
python 重命名轴索引的方法
2018/11/10 Python
Python Django中间件使用原理及流程分析
2020/06/13 Python
Python 使用双重循环打印图形菱形操作
2020/08/09 Python
详解基于Scrapy的IP代理池搭建
2020/09/29 Python
100%有机精油,美容油:House of Pure Essence
2018/10/30 全球购物
CHARLES & KEITH加拿大官网:新加坡时尚品牌
2020/03/26 全球购物
员工安全生产承诺书
2014/05/22 职场文书
小学运动会班级口号
2014/06/09 职场文书
应届生找工作求职信
2014/06/24 职场文书
幼儿园保育员责任书
2014/07/22 职场文书
公司向个人借款协议书范本
2014/10/09 职场文书
2015迎新晚会开场白
2015/07/17 职场文书
Springboot集成阿里云OSS上传文件系统教程
2021/06/28 Java/Android