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 相关文章推荐
如果文字过长,则将过长的部分变成省略号显示
Jun 26 Javascript
JavaScript将Table导出到Excel实现思路及代码
Mar 13 Javascript
解析javascript 浏览器关闭事件
Jul 08 Javascript
表格奇偶行设置不同颜色的核心JS代码
Dec 24 Javascript
javaScript 计算两个日期的天数相差(示例代码)
Dec 27 Javascript
基于jQuery实现交互体验社会化分享代码附源码下载
Jan 04 Javascript
分享一个精简的vue.js 图片lazyload插件实例
Mar 13 Javascript
react-native 圆弧拖动进度条实现的示例代码
Apr 12 Javascript
vant(ZanUi)结合async-validator实现表单验证的方法
Dec 06 Javascript
JS数组reduce()方法原理及使用技巧解析
Jul 14 Javascript
vue 授权获取微信openId操作
Nov 13 Javascript
vue代码分块和懒加载非必要资源文件
Apr 11 Vue.js
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
动漫女神老婆无限好,但日本女生可能就不是这么一回事了!
2020/03/04 日漫
MySQL授权问题总结
2007/05/06 PHP
PHP 搜索查询功能实现
2016/11/29 PHP
详谈PHP中的密码安全性Password Hashing
2017/02/04 PHP
php实现的PDO异常处理操作分析
2018/12/27 PHP
使用js获取地址栏中传递的值
2013/07/02 Javascript
jQuery+PHP+MySQL二级联动下拉菜单实例讲解
2015/10/27 Javascript
javascript的BOM
2016/05/03 Javascript
Angularjs中使用轮播图指令swiper
2017/05/30 Javascript
关于Vue实现组件信息的缓存问题
2017/08/23 Javascript
一个简单的node.js界面实现方法
2018/06/01 Javascript
解决VUE中document.body.scrollTop为0的问题
2018/09/15 Javascript
解决layui表格内文本超出隐藏的问题
2019/09/12 Javascript
layui树形菜单动态遍历的例子
2019/09/23 Javascript
JavaScript 闭包的使用场景
2020/09/17 Javascript
JavaScript封装单向链表的示例代码
2020/09/17 Javascript
js动态生成表格(节点操作)
2021/01/12 Javascript
[01:05:32]DOTA2上海特级锦标赛主赛事日 - 3 败者组第三轮#1COL VS Alliance第一局
2016/03/04 DOTA
使用pandas读取csv文件的指定列方法
2018/04/21 Python
python爬虫之模拟登陆csdn的实例代码
2018/05/18 Python
Pipenv一键搭建python虚拟环境的方法
2018/05/22 Python
python一行sql太长折成多行并且有多个参数的方法
2018/07/19 Python
实例讲解python中的序列化知识点
2018/10/08 Python
pymysql 开启调试模式的实现
2019/09/24 Python
django有外键关系的两张表如何相互查找
2020/02/10 Python
python编程进阶之异常处理用法实例分析
2020/02/21 Python
python爬虫爬取图片的简单代码
2021/01/18 Python
使用CSS3的appearance属性改变任何元素的浏览器默认风格
2012/12/24 HTML / CSS
Html5 audio标签样式的修改
2016/01/28 HTML / CSS
英国最大线上综合鞋类商城:Office
2017/12/08 全球购物
Feelunique美国:欧洲大型的在线美妆零售电商
2018/11/04 全球购物
软件测试笔试题
2012/10/25 面试题
营销专业应届生求职信
2013/11/26 职场文书
2015新学期校长寄语(3篇)
2015/03/25 职场文书
详解Django的MVT设计模式
2021/04/29 Python
Javascript使用integrity属性进行安全验证
2021/11/07 Javascript