在日常生活中,我们经常会说这件事、那件事,但这些无外乎都是指生活中发生的事。但其实在微信小程序中也有这种描述方式。比如,我们可以发问:什么是事件?而在我们学习的过程中,可以知道,事件既是一种用户方式,还是一种通讯方式,这是与我们在生活中所认识的截然不同的一种新概念。
事件也分为很多种,分别是:
(1)点击事件tap
(2)长按事件longtap
(3)触摸事件touchstart、touchend、touchmove、touchcancel
(4)其他submit、input ...
等等一系列的事件,我们统称为事件。其中对于触摸事件中的touchend和touchcancel我们要加以区分,touchend是结束触摸,而touchcancel是取消触摸。touchend是指手指已经移开了不再触摸,所以称为结束触摸;而touchcancel是指比如说正在操控微信小程序的时候,一个电话进来了,微信小程序就被迫中止了,此时称为取消触摸。两者非常容易混淆,所以一定要注重区分。除此,我们还学习了事件冒泡,事件冒泡分为两类,一类是冒泡事件,还有一类则自然是非冒泡事件。其中,点击事件、长按事件和触摸事件都属于冒泡事件,其他则是非冒泡事件。而所谓冒泡事件,就是指触发子类事件父类事件也会接连发生以产生一系列类似于冒泡一样连续发生的事件。在这个事件中,我们需要用到.wxml和.wxss以及.js,其实这和web前端是有点相似的,比如.wxml有点像web中的html,我们设置各种属性例如背景颜色啊、北京大小啊等等都是在.wxml中设置的,而.wxss则有点类似于web中的css用于与.wxml中属性连接。其中,还可以在.js中对各事件进行绑定。
而说到绑定,我们又知道了绑定分为bind绑定和catch绑定。而通过实验我们可以知道,bind绑定是用于冒泡事件,而catch绑定是用于非冒泡事件。因此,当我们对.wxml中的事件用catch绑定时会发现,触发子类无法引发父类事件的发生,得以验证。
而既然是事件,就肯定会有对象,事件的对象有以下:
(1)类型type
(2)时间戳timeStamp
(3)事件源组件target
(4)当前组件currentTarget
(5)触摸点数touches
学习到以上这里,我们就可以做一些基础的小程序了,例如:快递查询等等一系列的。快递查询就是运用了我们所学习的事件以及其绑定来进行的。