微信小程序简单实战(微信小程序从入门到学会第六天-------小程序的事件)

一、前言

前面讲到了关于小程序中如何使用脚本,今天我们要讲的是在小程序中如何快速进行交互,也就是所谓的组件事件了,很显然,没有事件的支撑,咱们的组件是没有灵魂的。那么今天就让我们一起步入小程序中事件的学习吧。

二、事件

微信小程序中的事件基本和JavaScript中的事件,唯一不同的是他在原先的基础上加了一个bind(不阻止事件冒泡)后者catch(阻止事件冒泡),以及 capture-bind(捕获并监听事件不阻止冒泡)和capture-catch(阻止捕获阻止冒泡),如下:

类型

触发条件

最低版本

touchstart

手指触摸动作开始

touchmove

手指触摸后移动

touchcancel

手指触摸动作被打断,如来电提醒,弹窗

touchend

手指触摸动作结束

tap

手指触摸后马上离开

longpress

手指触摸后,超过350ms再离开,如果指定了事件回调函数并触发了这个事件,tap事件将不被触发

1.5.0

longtap

手指触摸后,超过350ms再离开(推荐使用longpress事件代替)

transitionend

会在 WXSS transition 或 wx.createAnimation 动画结束后触发

animationstart

会在一个 WXSS animation 动画开始时触发

animationiteration

会在一个 WXSS animation 一次迭代结束时触发

animationend

会在一个 WXSS animation 动画完成时触发

touchforcechange

在支持 3D Touch 的 iPhone 设备,重按时会触发

以上这些都是冒泡事件。在事件的前缀中还有mut-bind,他们只和bind一块儿使用,它和bing的区别在于嵌套同级的组件触发事件后不会产生冒泡,也就是互不影响,点击哪个就触发哪个,而bind和catch则不是。

三、事件的应用1.直接在js文件中使用

要想使用这些事件也很简单,我们可以现在模板文件同名不同后缀的js文件里声明一个可以操作的函数,如下:

微信小程序简单实战(微信小程序从入门到学会第六天-------小程序的事件)(1)

然后我们将这些函数应用到模板文件中,如图:

微信小程序简单实战(微信小程序从入门到学会第六天-------小程序的事件)(2)

2.利用脚本文件

我们可以将wxs中的函数应用到事件上,首先声明一个函数,如下:

微信小程序简单实战(微信小程序从入门到学会第六天-------小程序的事件)(3)

然后引入模板文件内的脚本组件中,如下:

微信小程序简单实战(微信小程序从入门到学会第六天-------小程序的事件)(4)

可以看到,成功输出。

3.把绑定的数据当成函数使用

看起来牛逼轰轰的,首先我们得在js文件中声明一个数据,它的值为一个函数名,如图:

微信小程序简单实战(微信小程序从入门到学会第六天-------小程序的事件)(5)

然后我们再来使用这个绑定的数据来执行脚本,如下:

微信小程序简单实战(微信小程序从入门到学会第六天-------小程序的事件)(6)

四、事件的组成

让我们来看下事件是有哪几部分组成的,如图:

微信小程序简单实战(微信小程序从入门到学会第六天-------小程序的事件)(7)

changedTouches :当前变化的触摸点信息的数组(多点触控) currentTarget:当前组件的一些属性值集合 detail:额外的自定义信息 mark:触发事件的target节点数据 mut:是否互不干扰 target:触发事件的源组件的一些属性值集合 timeStamp:事件生成时的时间戳(毫秒数) touches:当前停留在屏幕中的触摸点信息的数组(多点触控) type:事件类型

五、自定义属性

刚刚我们之所以说事件的组成,是因为它不仅仅包含我们的组件的信息,也可以让我们自定义一些属性,而且自定义的属性就在我们的源组件中保留,以data-开头,如图:

微信小程序简单实战(微信小程序从入门到学会第六天-------小程序的事件)(8)

然后引入,如图:

微信小程序简单实战(微信小程序从入门到学会第六天-------小程序的事件)(9)

也是实现了自定义属性的调用。

六、事件标记

如果我们想要通过给每个事件一个标记,当标记为某个值的时候就触发这个事件,这个时候mark就能派上用场了,如图:

微信小程序简单实战(微信小程序从入门到学会第六天-------小程序的事件)(10)

然后我们引入这个函数,如图:

微信小程序简单实战(微信小程序从入门到学会第六天-------小程序的事件)(11)

此时单击这个按钮就可以显示或者隐藏下面的文本了。

七、表单组件事件

除了上述的一些事件以外,还有一些表单事件,这些表单的事件通常只能作用于表单组件中,下面我们先来看下输入框的用法:

微信小程序简单实战(微信小程序从入门到学会第六天-------小程序的事件)(12)

微信小程序简单实战(微信小程序从入门到学会第六天-------小程序的事件)(13)

八、总结

以上就是我们要说的关于事件的所有内容了,虽然不难,不过比较多,大家可以多敲敲来巩固下自己的基础。下篇文章我们来将下自定义组件。更多精彩好文敬请关注公众号简易编程网。

,

免责声明:本文仅代表文章作者的个人观点,与本站无关。其原创性、真实性以及文中陈述文字和内容未经本站证实,对本文以及其中全部或者部分内容文字的真实性、完整性和原创性本站不作任何保证或承诺,请读者仅作参考,并自行核实相关内容。文章投诉邮箱:anhduc.ph@yahoo.com

    分享
    投诉
    首页