微信小程序实现页面监听自定义组件的触发事件


Posted in Javascript onNovember 01, 2020

微信小程序实现页面监听自定义组件的触发事件,供大家参考,具体内容如下

需求:在微信小程序开发过程中,页面通常会用到提示弹框。这时为了减少代码量及代码可拓展性,我们自定义一个提示组件是必不可少的了。那么问题来了,页面如何监听到组件的触发事件呢?
下面给大家详细讲解页面如何监听自定义组件的触发事件。

prompt组件:

1.首先搭建提示组件ui。由于后面各个页面都有可能用到该组件,所以我选择从页面传值过来显示提示语;
2.然后在prompt.js的点击事件里指定方法名称,该方法名称在后面的页面调用监听组件时需要用到;

// prompt.wxml
<view class="main" catchtouchmove="catchTouchMove">
 <view class="main-mask"></view>
 <view class="main-content">
 <view class="content-title">提示</view>
 <view class="content-text">{{txtTips}}</view>
 <button class="btn-confirm" bindtap="bindConfirm">?定</button>
 </view>
</view>
// prompt.js
Component({
 /**
 * 组件的属性列表
 */
 properties: {
 txtTips: String,//声明属性类型
 },

 /**
 * 组件的初始数据
 */
 data: {

 },

 /**
 * 组件的方法列表
 */
 methods: {
 //确认按钮
 bindConfirm: function (e) {
  this.triggerEvent('events');
 },

 // 截获竖向滑动--禁止底部页面滑动
 catchTouchMove: function (res) {
  return true;
 },
 }
})

home页面:

1.首先需要在home.json的"usingComponents"属性里引入prompt组件地址;
2.然后在home.wxml中引入<prompt />组件,且绑定的事件名称要跟组件中triggerEvent方法指定的名称一致;
3.完成上面2个步骤后,我们就可以在js页面就可以监听操作组件的触发事件啦;

// home.json
{
 "usingComponents": {// 需引入自定义组件地址
 "prompt": "/component/prompt/prompt"
 }
}
// home.wxml
<view class="main">
 <button bindtap="bindEjectComponent">弹出自定义组件</button>
 <!-- 提示组件 -->
 <prompt txtTips="{{txtTips}}" bind:events="bindPromptConfirm" wx:if="{{isShowPromptComponent}}"/>
</view>
// home.js
Page({
 /**
 页面的初始数据
 */
 data: {
 isShowPromptComponent: false,//是否显示提示控件组件
 },

 //点击弹出自定义组件
 bindEjectComponent:function(e){
 var that = this;
 that.setData({
  isShowPromptComponent: true,
  txtTips:"Hi,我是自定义提示组件喔!",
 })
 },

 //提示组件确认事件
 bindPromptConfirm: function (e) {
 var that = this;
 that.setData({
  isShowPromptComponent: false,
 })
 },
})

看到这里‘页面监听组件触发事件'功能就实现啦!!!最后上演示视频,看看效果:

微信小程序实现页面监听自定义组件的触发事件

为大家推荐现在关注度比较高的微信小程序教程一篇:《微信小程序开发教程》小编为大家精心整理的,希望喜欢。

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

Javascript 相关文章推荐
对YUI扩展的Gird组件 Part-1
Mar 10 Javascript
jquery在IE、FF浏览器的差别详细探讨
Apr 28 Javascript
js为数字添加逗号并格式化数字的代码
Aug 23 Javascript
如何实现textarea里的不同文本显示不同颜色
Jan 20 Javascript
JS实现一个按钮的方法
Feb 05 Javascript
JavaScript实现简单的二级导航菜单实例
Apr 15 Javascript
javascript获取当前的时间戳的方法汇总
Jul 26 Javascript
浅析JavaScriptSerializer类的序列化与反序列化
Nov 22 Javascript
微信小程序商品详情页规格属性选择示例代码
Oct 30 Javascript
vue页面跳转后返回原页面初始位置方法
Feb 11 Javascript
开发中常用的25个JavaScript单行代码(小结)
Jun 28 Javascript
基于JS+HTML实现弹窗提示是否确认提交功能
Jun 17 Javascript
uniapp微信小程序实现一个页面多个倒计时
Nov 01 #Javascript
uni-app使用countdown插件实现倒计时
Nov 01 #Javascript
uni-app实现获取验证码倒计时功能
Nov 01 #Javascript
uniapp电商小程序实现订单30分钟倒计时
Nov 01 #Javascript
详解JavaScript之Array.reduce源码解读
Nov 01 #Javascript
微信小程序实现星星评分效果
Nov 01 #Javascript
Express 配置HTML页面访问的实现
Nov 01 #Javascript
You might like
URL Rewrite的设置方法
2007/01/02 PHP
PHP结合jQuery实现找回密码
2015/07/22 PHP
浅谈PHP安全防护之Web攻击
2017/01/03 PHP
php实现文件与16进制相互转换的方法示例
2017/02/16 PHP
PHP用正则匹配form表单中所有元素的类型和属性值实例代码
2017/02/28 PHP
php解决crontab定时任务不能写入文件问题的方法分析
2019/09/16 PHP
Thinkphp5.0框架使用模型Model的获取器、修改器、软删除数据操作示例
2019/10/11 PHP
ExtJs 3.1 XmlTreeLoader Example Error
2010/02/09 Javascript
仅用[]()+!等符号就足以实现几乎任意Javascript代码
2010/03/01 Javascript
autoPlay 基于jquery的图片自动播放效果
2011/12/07 Javascript
jQuery老黄历完整实现方法
2015/01/16 Javascript
JavaScript数组前面插入元素的方法
2015/04/06 Javascript
javascript中对变量类型的判断方法
2015/08/09 Javascript
浅谈JS中的!=、== 、!==、===的用法和区别
2016/09/24 Javascript
AngularJS中isolate scope的用法分析
2016/11/22 Javascript
Bootstrap modal使用及点击外部不消失的解决方法
2016/12/13 Javascript
vue.js中ref及$refs的使用方法解析
2019/10/08 Javascript
javascript设计模式 ? 桥接模式原理与应用实例分析
2020/04/13 Javascript
angular中的post请求处理示例详解
2020/06/30 Javascript
[33:33]完美世界DOTA2联赛PWL S2 FTD.C vs SZ 第二场 11.27
2020/11/30 DOTA
python client使用http post 到server端的代码
2013/02/10 Python
python实现发送邮件功能
2017/07/22 Python
Django添加feeds功能的示例
2018/08/07 Python
dpn网络的pytorch实现方式
2020/01/14 Python
Python实现初始化不同的变量类型为空值
2020/06/02 Python
keras 读取多标签图像数据方式
2020/06/12 Python
Python函数递归调用实现原理实例解析
2020/08/11 Python
Python 解析xml文件的示例
2020/09/29 Python
意大利团购网站:Groupon意大利
2016/10/11 全球购物
新西兰最大、占有率最高的综合性药房:PharmacyDirect药房中文网
2020/11/03 全球购物
园林毕业生自我鉴定范文
2013/12/29 职场文书
情人节寄语大全
2014/04/11 职场文书
文体活动总结范文
2014/05/05 职场文书
党风廉政建设调研报告
2015/01/01 职场文书
党校学习个人总结
2015/02/15 职场文书
pytorch 实现在测试的时候启用dropout
2021/05/27 Python