vue2.0 中#$emit,$on的使用详解


Posted in Javascript onJune 07, 2017

vue1.0中 vm.$dispatch 和 vm.$broadcast 被弃用,改用$emit,$on

vm.$on( event, callback )

监听当前实例上的自定义事件。事件可以由vm.$emit触发。回调函数会接收所有传入事件触发函数的额外参数。

vm.$emit( event, […args] )

触发当前实例上的事件。附加参数都会传给监听器回调。

例子:

//父组件
<template>
  <ratingselect @select-type="onSelectType"></ratingselect>
</template>
<script>
  data () {
   return {
    selectType: 0,
  },
  methods: {
   onSelectType (type) {
    this.selectType = type
   }
  }
</script>

父组件使用@select-type="onSelectType"@就是v-on的简写,监听由子组件vm.$emit触发的事件,通过onSelectType()接受从子组件传递过来的数据,通知父组件数据改变了。

// 子组件
<template>
 <div>
  <span @click="select(0, $event)" :class="{'active': selectType===0}"></span>
  <span @click="select(1, $event)" :class="{'active': selectType===1}"></span>
  <span @click="select(2, $event)" :class="{'active': selectType===2}"></span>
 </div>
</template>
<script>
  data () {
   return {
    selectType: 0,
  },
  methods: {
    select (type, event) {
      this.selectType = type
      this.$emit('select-type', type)
   }
  }
</script>

子组件通过$emit来触发事件,将参数传递出去。

以上所述是小编给大家介绍的vue2.0 中#$emit,$on的使用详解,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对三水点靠木网站的支持!

Javascript 相关文章推荐
javascript 极速 隐藏/显示万行表格列只需 60毫秒
Mar 28 Javascript
js 蒙版进度条(结合图片)
Mar 10 Javascript
IE浏览器中图片onload事件无效的解决方法
Apr 29 Javascript
让JavaScript中setTimeout支持链式操作的方法
Jun 19 Javascript
基于JS代码实现图片在页面中旋转效果
Jun 16 Javascript
js前端实现多图图片上传预览的两个方法(推荐)
Nov 18 Javascript
JS实现针对给定时间的倒计时功能示例
Apr 11 Javascript
Vue 使用中的小技巧
Apr 26 Javascript
通过实例学习React中事件节流防抖
Jun 17 Javascript
scrapyd schedule.json setting 传入多个值问题
Aug 07 Javascript
微信小程序聊天功能的示例代码
Jan 13 Javascript
JS页面动态绘图工具SVG,Canvas,VML介简介
Oct 16 Javascript
vue2.0 自定义日期时间过滤器
Jun 07 #Javascript
详解Node.js 命令行程序开发教程
Jun 07 #Javascript
详解vee-validate的使用个人小结
Jun 07 #Javascript
微信小程序多张图片上传功能
Jun 07 #Javascript
Vue.js对象转换实例
Jun 07 #Javascript
深入理解Angular4中的依赖注入
Jun 07 #Javascript
Vue中保存用户登录状态实例代码
Jun 07 #Javascript
You might like
那些年一起学习的PHP(一)
2012/03/21 PHP
一个简洁的PHP可逆加密函数(分享)
2013/06/06 PHP
PHP代码维护,重构变困难的4种原因分析
2016/01/25 PHP
ThinkPHP中create()方法自动验证表单信息
2017/04/28 PHP
基于ThinkPHP5.0实现图片上传插件
2017/09/25 PHP
thinkPHP框架实现的短信接口验证码功能示例
2018/06/20 PHP
ThinkPHP框架下微信支付功能总结踩坑笔记
2019/04/10 PHP
Laravel + Elasticsearch 实现中文搜索的方法
2020/02/02 PHP
jquery选择器之属性过滤选择器详解
2014/01/27 Javascript
深入理解Javascript中this的作用域
2014/08/12 Javascript
通过location.replace禁止浏览器后退防止重复提交
2014/09/04 Javascript
使用百度地图api实现根据地址查询经纬度
2014/12/11 Javascript
jQuery获取页面元素绝对与相对位置的方法
2015/06/10 Javascript
jquery实现的Accordion折叠面板效果代码
2015/09/02 Javascript
JS IOS/iPhone的Safari浏览器不兼容Javascript中的Date()问题如何解决
2016/11/11 Javascript
详解微信小程序——自定义圆形进度条
2016/12/29 Javascript
Bootstarp 基础教程之表单部分实例代码
2017/02/03 Javascript
js实现年月日表单三级联动
2020/04/17 Javascript
Express框架之connect-flash详解
2017/05/31 Javascript
Angular2.0/4.0 使用Echarts图表的示例代码
2017/12/07 Javascript
jQuery分组选择器简单用法示例
2019/04/04 jQuery
JS+CSS实现动态时钟
2021/02/19 Javascript
[57:59]完美世界DOTA2联赛循环赛 Ink Ice vs LBZS BO2第一场 11.05
2020/11/05 DOTA
JSONLINT:python的json数据验证库实例解析
2017/11/28 Python
Python序列循环移位的3种方法推荐
2018/04/09 Python
如何利用Pyecharts可视化微信好友
2019/07/04 Python
python模块和包的应用BASE_PATH使用解析
2019/12/14 Python
解决python DataFrame 打印结果不换行问题
2020/04/09 Python
如何利用Python给自己的头像加一个小国旗(小月饼)
2020/10/02 Python
Python爬虫逆向分析某云音乐加密参数的实例分析
2020/12/04 Python
解决canvas转base64/jpeg时透明区域变成黑色背景的方法
2016/10/23 HTML / CSS
澳大利亚最大的女装零售商:Millers
2017/09/10 全球购物
美国帽子俱乐部商店:Hat Club
2019/07/05 全球购物
2014学雷锋活动心得体会
2014/03/10 职场文书
浅谈mysql增加索引不生效的几种情况
2021/06/23 MySQL
再谈python_tkinter弹出对话框创建
2022/03/20 Python