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


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 相关文章推荐
JavaScript实际应用:innerHTMl和确认提示的使用
Jun 22 Javascript
JavaScript去掉空格的方法集合
Dec 28 Javascript
js数组循环遍历数组内所有元素的方法
Jan 18 Javascript
jquery批量设置属性readonly和disabled的方法
Jan 24 Javascript
JavaScript获取网页表单提交方式的方法
Apr 02 Javascript
jQuery点击按钮弹出遮罩层且内容居中特效
Dec 14 Javascript
axios基本入门用法教程
Mar 25 Javascript
jquery实现一个全局计时器(商城可用)
Jun 30 jQuery
Angular指令之restict匹配模式的详解
Jul 27 Javascript
微信小程序如何刷新当前界面的实现方法
Jun 07 Javascript
JS变量提升及函数提升实例解析
Sep 03 Javascript
vue 自定义组件添加原生事件
Apr 21 Vue.js
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
用PHP和MySQL保存和输出图片
2006/10/09 PHP
解析PHP多种序列化与反序列化的方法
2013/06/06 PHP
PHP自定义错误处理的方法分析
2018/12/19 PHP
php设计模式之工厂模式用法经典实例分析
2019/09/20 PHP
Use Word to Search for Files
2007/06/15 Javascript
jQuery 表单验证扩展代码(二)
2010/10/20 Javascript
js时间戳格式化成日期格式的多种方法
2013/11/11 Javascript
标题过长使用javascript按字节截取字符串
2014/04/24 Javascript
用js一次改变多个input的readonly属性值的方法
2014/06/11 Javascript
web前端设计师们常用的jQuery特效插件汇总
2014/12/07 Javascript
JavaScript获取一个范围内日期的方法
2015/04/24 Javascript
浅析JavaScript Array和string的转换(推荐)
2016/05/20 Javascript
关于Node.js中Buffer的一些你可能不知道的用法
2017/03/28 Javascript
利用JS hash制作单页Web应用的方法详解
2017/10/10 Javascript
vue基于viewer实现的图片查看器功能
2019/04/12 Javascript
python复制与引用用法分析
2015/04/08 Python
Python字符串拼接的几种方法整理
2017/08/02 Python
Python import与from import使用及区别介绍
2018/09/06 Python
python+selenium 定位到元素,无法点击的解决方法
2019/01/30 Python
Python3实现的旋转矩阵图像算法示例
2019/04/03 Python
Python异步编程之协程任务的调度操作实例分析
2020/02/01 Python
python代码实现TSNE降维数据可视化教程
2020/02/28 Python
Python GUI编程学习笔记之tkinter中messagebox、filedialog控件用法详解
2020/03/30 Python
python thrift 实现 单端口多服务的过程
2020/06/08 Python
Python collections.deque双边队列原理详解
2020/10/05 Python
Pycharm中如何关掉python console
2020/10/27 Python
英国领先的维生素和营养补充剂直接供应商:Healthspan
2019/04/22 全球购物
奥地利体育网上商店:Gigasport
2019/10/09 全球购物
如何在Cookie里面保存Unicode和国际化字符
2013/05/25 面试题
婚前保证书
2014/04/29 职场文书
2014年电教工作总结
2014/12/19 职场文书
证劵公司反洗钱宣传活动总结
2015/05/08 职场文书
公司环境卫生管理制度
2015/08/05 职场文书
小学五年级班主任工作经验交流材料
2015/11/02 职场文书
《七月的天山》教学反思
2016/02/19 职场文书
创业计划书之o2o水果店
2019/08/30 职场文书