|
导读微信小程序,简称小程序,英文名Mini Program,是一种不需要下载安装即可使用的应用,它实现了应用“触手可及”的梦想,用户扫一扫或搜一下即可打开应用。小程序是一种不用下载就能使用的应用,也是一... 微信小程序,简称小程序,英文名Mini Program,是一种不需要下载安装即可使用的应用,它实现了应用“触手可及”的梦想,用户扫一扫或搜一下即可打开应用。小程序是一种不用下载就能使用的应用,也是一项门槛非常高的创新,经过将近两年的发展,已经构造了新的小程序开发环境和开发者生态。 前面说到,微信小程序框架是逻辑层与UI层分析的设计方式,这种设计方式需要解决两个问题
其中前面讲到的数据绑定解决了第一个问题,而事件则解决第二个问题
总结下来事件就是指发生了一些事情,通常是用户进行了一些操作,如点击某个按钮或在手机屏幕上滑动了手指。当事件发生时,框架会调用事件处理函数(如果有的话),这样就可以实现对用户操作的响应。 事件绑定通过事件绑定来完成对用户操作的响应,比如要处理 //wxml
<view id="tapTest" data-hi="WeChat" bindtap="tapName"> Click me! </view>
//.js
Page({
tapName: function(event) {
console.log(event)
}
})event对象包含一些关于事件的数据: target:触发事件的组件 冒泡事件和非冒泡事件为什么会有target和currentTarget之分呢,这是由于事件分为两类,冒泡事件和非冒泡事件
其中tap事件是属于冒泡事件(这也是为什么上面例子中的event会包含currentTarget),另外其它的冒泡事件还包括 为什么需要冒泡事件有了冒泡事件,就可以更加方便的实现一些功能。 比如程序有一个视图,包含用户头像和姓名,当用户点击头像或姓名时,进入用户详情页面。如果没有冒泡事件,就需要处理头像和姓名的点击事件,而现在只需在外层包裹一个组件,并处理该组件的事件即可。 阻止事件冒泡在有些情况下可能会希望阻止事件的冒泡行为,可以使用catch事件绑定,如catchtap,就可以阻止事件的冒泡行为。 可以通过下面的代码示例来加深对冒泡事件的理解 //.wxml
<view id="outter" bindtap="handleTapOutter">
我是父亲节点
<view id="middle" catchtap="handleTapMiddle">
我是儿子节点
<view id="inner" bindtap="handleInner">
我是孙子节点
</view>
</view>
</view>
//.js
Page({
handleTapOutter: function(event) {
console.log("父亲节点被点击")
},
handleTapMiddle: function(event) {
console.log("儿子节点被点击")
},
handleInner: function(event) {
console.log("孙子节点被点击")
},
})尝试修改各级节点的tap事件绑定方式,查看输出的日志会有什么变化。 以上就是小程序开发基础篇之事件(9)的详细内容,更多请关注php中文网其它相关文章! 小程序是一种不需要下载安装即可使用的应用,它实现了应用“触手可及”的梦想,用户扫一扫或者搜一下即可打开应用。 |
温馨提示:喜欢本站的话,请收藏一下本站!