微信小程序 this.triggerEvent()的具体使用


Posted in Javascript onDecember 10, 2019

在对组件进行封装时 在当前页面想要获取组件中的某一状态,需要使用到this.triggerEvent(' ',{},{}),第一个参数是自定义事件名称,这个名称是在页面调用组件时bind的名称,第二个对象就可以将想要的属性拿到,第三个参数文档中有介绍,有机会再做补充。

在这个demo中like组件是我要封装的组件,在classic.wxml中调用的:

微信小程序 this.triggerEvent()的具体使用

组件like.vue的页面是这样写的:

<view bind:tap="onLike" class="container">
 <image src="{{like?yesSrc:noSrc}}" />
 <text>{{count}}</text>
</view>

组件的like.js中methods是这样写的:

methods: {
    onLike(event) {
      let like = this.properties.like;
      let count = this.properties.count;
      count = like ? count - 1 : count + 1;
      this.setData({
        like: !like,
        count
      })
      let behavior = this.properties.like ? "like" : "cancel";
      this.triggerEvent('like', {
        behavior
      }, {})
    }
  }

那么在classic.wxml中调用组件:

这里要注意bind:后面的like是this.triggerEvent()的第一个参数,自定义事件名称

<v-like bind:like="onLike" like="{{classicData.like_status}}" count="{{classicData.fav_nums}}"/>

classic.js中onlike就可以实现页面对组件属性的获取:

onLike: function(event) {
    console.log(event)
  }

微信小程序 this.triggerEvent()的具体使用

event.detail.behavior就可以拿到是不是喜欢的属性了。

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持三水点靠木。

Javascript 相关文章推荐
js或者jquery判断图片是否加载完成实现代码
Mar 20 Javascript
jQuery实现的向下图文信息滚动效果
May 03 Javascript
基于jQuery实现select下拉选择可输入附源码下载
Feb 03 Javascript
Javascript获取图片原始宽度和高度的方法详解
Sep 20 Javascript
使用jQuery实现一个类似GridView的编辑,更新,取消和删除的功能
Mar 15 Javascript
node.js学习之断言assert的使用示例
Sep 28 Javascript
JS设计模式之策略模式概念与用法分析
Feb 05 Javascript
js实现点击展开隐藏效果(实例代码)
Sep 28 Javascript
微信小程序使用二次贝塞尔曲线画波浪
Dec 25 Javascript
微信小程序的线程架构【推荐】
May 14 Javascript
JavaScript ECMA-262-3 深入解析(一):执行上下文实例分析
Apr 25 Javascript
JQuery事件冒泡和默认行为代码实例
May 13 jQuery
jQuery实现消息弹出框效果
Dec 10 #jQuery
jQuery实现弹出层效果
Dec 10 #jQuery
javascript实现弹出层效果
Dec 10 #Javascript
element表格翻页第2页从1开始编号(后端从0开始分页)
Dec 10 #Javascript
微信小程序实现注册登录功能(表单校验、错误提示)
Dec 10 #Javascript
微信小程序登陆注册功能的实现代码
Dec 10 #Javascript
vue excel上传预览和table内容下载到excel文件中
Dec 10 #Javascript
You might like
PHP调用Webservice实例代码
2011/07/29 PHP
PHP 应用容器化以及部署方法
2018/02/12 PHP
JSON扫盲帖 JSON.as类教程
2009/02/16 Javascript
csdn 批量接受好友邀请
2009/02/19 Javascript
js 获取、清空input type=&quot;file&quot;的值(示例代码)
2013/12/24 Javascript
jQuery实现的Div窗口震动效果实例
2015/08/07 Javascript
jquery插件EasyUI中form表单提交实例分享
2016/01/11 Javascript
Vue.js手风琴菜单组件开发实例
2017/05/16 Javascript
BootStrap 页签切换失效的解决方法
2017/08/17 Javascript
JS实现对json对象排序并删除id相同项功能示例
2018/04/18 Javascript
JavaScript实现的DOM树遍历方法详解【二叉DOM树、多叉DOM树】
2018/05/07 Javascript
Vue.js中 v-model 指令的修饰符详解
2018/12/03 Javascript
angularjs模态框的使用代码实例
2019/12/20 Javascript
微信小程序如何实现点击图片放大功能
2020/01/21 Javascript
小程序Scroll-view上拉滚动刷新数据
2020/06/21 Javascript
antd多选下拉框一行展示的实现方式
2020/10/31 Javascript
浅谈Vue使用Elementui修改默认的最快方法
2020/12/05 Vue.js
如何管理Vue中的缓存页面
2021/02/06 Vue.js
[56:12]LGD vs Optic Supermajor小组赛D组胜者组决赛 BO3 第一场 6.3
2018/06/04 DOTA
[52:22]EG vs VG Supermajor小组赛B组 BO3 第一场 6.2
2018/06/03 DOTA
python爬虫教程之爬取百度贴吧并下载的示例
2014/03/07 Python
python文件操作相关知识点总结整理
2016/02/22 Python
python3+PyQt5实现自定义窗口部件Counters
2018/04/20 Python
解决Django migrate No changes detected 不能创建表的问题
2018/05/27 Python
对python数据切割归并算法的实例讲解
2018/12/12 Python
Python 使用 docopt 解析json参数文件过程讲解
2019/08/13 Python
python实现的自动发送消息功能详解
2019/08/15 Python
Python统计分析模块statistics用法示例
2019/09/06 Python
FragranceNet中文网:北美健康美容线上零售商
2020/08/26 全球购物
计算机专业毕业生的自我评价
2013/11/18 职场文书
2014年圣诞节促销方案
2014/03/14 职场文书
2014党员民主评议个人思想剖析发言
2014/09/19 职场文书
2014年医药代表工作总结
2014/11/22 职场文书
巾帼文明岗事迹材料
2014/12/24 职场文书
2019年手机市场的调研报告2篇
2019/10/10 职场文书
关于redisson缓存序列化几枚大坑说明
2021/08/04 Redis