详解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类型转换示例
Apr 29 Javascript
基于JQuery实现图片上传预览与删除操作
May 24 Javascript
js实现四舍五入完全保留两位小数的方法
Aug 02 Javascript
防止重复发送 Ajax 请求
Feb 15 Javascript
jQuery实现动态生成表格并为行绑定单击变色动作的方法
Apr 17 jQuery
vue-cli如何引入bootstrap工具的方法
Oct 19 Javascript
Thinkjs3新手入门之添加一个新的页面
Dec 06 Javascript
解决webpack无法通过IP地址访问localhost的问题
Feb 22 Javascript
JS实现DOM节点插入操作之子节点与兄弟节点插入操作示例
Jul 30 Javascript
判断iOS、Android以及PC端的示例代码
Nov 15 Javascript
Vue触发隐藏input file的方法实例详解
Aug 14 Javascript
vue 中的动态传参和query传参操作
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
用PHP函数解决SQL injection
2006/12/09 PHP
PHP 获取远程文件内容的函数代码
2010/03/24 PHP
Symfony2框架学习笔记之表单用法详解
2016/03/18 PHP
jQuery-serialize()输出序列化form表单值的方法
2012/12/26 Javascript
jquery实现手风琴效果实例代码
2013/11/15 Javascript
JS中的数组的sort方法使用示例
2014/01/22 Javascript
javascript实现动态模态绑定grid过程代码
2014/09/22 Javascript
jQuery简单实现隐藏以及显示特效
2015/02/26 Javascript
jQuery实现在下拉列表选择时获取json数据的方法
2015/04/16 Javascript
Easyui form combobox省市区三级联动
2016/01/13 Javascript
JavaScript小技巧整理篇(非常全)
2016/01/26 Javascript
js改变css样式的三种方法推荐
2016/06/28 Javascript
ionic2 tabs 图标自定义实例
2017/03/08 Javascript
JS控制鼠标拒绝点击某一按钮的实例
2017/12/29 Javascript
Vux+Axios拦截器增加loading的问题及实现方法
2018/11/08 Javascript
解决vue跨域axios异步通信问题
2019/04/17 Javascript
jQuery 实现DOM元素拖拽交换位置的实例代码
2020/07/14 jQuery
python实现数值积分的Simpson方法实例分析
2015/06/05 Python
Python基于pygame实现图片代替鼠标移动效果
2015/11/11 Python
图文讲解选择排序算法的原理及在Python中的实现
2016/05/04 Python
Python文件操作,open读写文件,追加文本内容实例
2016/12/14 Python
Python连接SQLite数据库并进行增册改查操作方法详解
2020/02/18 Python
Python 使用 environs 库定义环境变量的方法
2020/02/25 Python
Python openpyxl 插入折线图实例
2020/04/17 Python
详解Selenium 元素定位和WebDriver常用方法
2020/12/04 Python
python实现图像随机裁剪的示例代码
2020/12/10 Python
移动端html5模拟长按事件的实现方法
2018/09/30 HTML / CSS
全球性的在线时尚男装零售商:boohooMAN
2016/12/17 全球购物
压铸汽车模型收藏家:Diecastmodelswholesale.com
2016/12/21 全球购物
FirstCry阿联酋儿童和婴儿产品网上购物:FirstCry.ae
2021/02/22 全球购物
小学学雷锋活动总结
2014/04/25 职场文书
新课培训心得体会
2014/09/03 职场文书
工作失职检讨书(精华篇)
2014/10/15 职场文书
学习普通话的体会
2014/11/07 职场文书
社区端午节活动总结
2015/02/11 职场文书
JS + HTML 罗盘式时钟的实现
2021/05/21 Javascript