详解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 相关文章推荐
XMLHTTP 乱码的解决方法(UTF8,GB2312 编码 解码)
Jan 12 Javascript
jBox 2.3基于jquery的最新多功能对话框插件 常见使用问题解答
Nov 10 Javascript
JQuery设置文本框和密码框得到焦点时的样式
Aug 30 Javascript
JS实现金额转换(将输入的阿拉伯数字)转换成中文的实现代码
Sep 30 Javascript
使用jQuery动态加载js脚本文件的方法
Apr 03 Javascript
JavaScript常用基础知识强化学习
Dec 09 Javascript
js实现键盘自动打字效果
Dec 23 Javascript
jquery pagination分页插件使用详解(后台struts2)
Jan 22 Javascript
bootstrap+jQuery实现的动态进度条功能示例
May 25 jQuery
H5基于iScroll实现下拉刷新和上拉加载更多
Jul 18 Javascript
详解微信小程序input标签正则初体验
Aug 18 Javascript
vue中过滤器filter的讲解
Jan 21 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
一条久听不愿放下的DIY森海MX500,三言两语话神奇
2021/03/02 无线电
PHP中在数据库中保存Checkbox数据(1)
2006/10/09 PHP
PHP 显示客户端IP与服务器IP的代码
2010/10/12 PHP
php下封装较好的数字分页方法
2010/11/23 PHP
PHP Session_Regenerate_ID函数双释放内存破坏漏洞
2011/01/27 PHP
PHP网页游戏学习之Xnova(ogame)源码解读(十六)
2014/06/30 PHP
php 获取xml接口数据的处理方法
2018/05/31 PHP
理解Javascript_11_constructor实现原理
2010/10/18 Javascript
基于JavaScript自定义构造函数的详解说明
2013/04/24 Javascript
JQuery EasyUI 加载两次url的原因分析及解决方案
2014/08/18 Javascript
javascript设置连续两次点击按钮时间间隔的方法
2014/10/28 Javascript
JQuery记住用户名密码实现下次自动登录功能
2015/04/27 Javascript
AngularJS入门教程之控制器详解
2016/07/27 Javascript
JS控件bootstrap suggest plugin使用方法详解
2017/03/25 Javascript
详解Vue2.x-directive的学习笔记
2017/07/17 Javascript
Angular.js中angular-ui-router的简单实践
2017/07/18 Javascript
vue2实现可复用的轮播图carousel组件详解
2017/11/27 Javascript
p5.js入门教程之小球动画示例代码
2018/03/15 Javascript
浅析vue-router jquery和params传参(接收参数)$router $route的区别
2018/08/03 jQuery
基于layui的table插件进行复选框联动功能的实现方法
2019/09/19 Javascript
JavaScript代码模拟鼠标自动点击事件示例
2020/08/07 Javascript
javascript的hashCode函数实现代码小结
2020/08/11 Javascript
vue 将多个过滤器封装到一个文件中的代码详解
2020/09/05 Javascript
解决Antd Table组件表头不对齐的问题
2020/10/27 Javascript
DJANGO-ALLAUTH社交用户系统的安装配置
2014/11/18 Python
Python爬虫包 BeautifulSoup  递归抓取实例详解
2017/01/28 Python
全面介绍python中很常用的单元测试框架unitest
2020/12/14 Python
英国豪华真皮和布艺沙发销售网站:Darlings of Chelsea
2018/01/05 全球购物
英国电子产品购物网站:TobyDeals
2018/07/30 全球购物
信息技术专业大学生职业生涯规划书
2014/01/24 职场文书
关于随地扔垃圾的检讨书
2014/09/30 职场文书
2014年高中教师工作总结
2014/12/19 职场文书
golang interface判断为空nil的实现代码
2021/04/24 Golang
Oracle表空间与权限的深入讲解
2021/11/17 Oracle
如何Tomcat中使用ipv6地址
2022/05/06 Servers
SQL SERVER中的流程控制语句
2022/05/25 SQL Server