发表于: 2019-03-27 18:55:13

1 592


今天完成的事情:(一定要写非常细致的内容,比如说学会了盒子模型,了解了Margin) 

事件绑定的写法和组件属性一致,以key="value"的形式,其中:

key以bind或者catch开头,然后跟上事件的类型,如bindtap、catchtouchstart。

bind和catch后可以紧跟一个冒号,其含义不变,如bind:tap、catch:touchstart。

同时bind和catch前还可以加上capture-来表示捕获阶段。

. value是一个字符串,需要在对应的页面Page构造器中定义同名的函数,否则触发事件时在控制台会有报错信息。

bind和capture-bind的含义分别代表事件的冒泡阶段和捕获阶段

<view id="outer" bind:tap="handleTap4" capture-bind:tap="handleTap1">

  outer view

  <view id="inner" bind:tap="handleTap3" capture-bind:tap="handleTap2">

    inner view

  </view>

</view>

bind事件绑定不会阻止冒泡事件向上冒泡,catch事件绑定可以阻止冒泡事件向上冒泡。

如果将以上代码的capture-bind:tap="handleTap1"改成capture-catch:tap="handleTap1",点击inner view只会触发handleTap1(catch事件阻止了tap事件冒泡)。


当事件回调触发的时候,会收到一个事件对象,对象的详细属性如下表所示。

事件对象属性

属性类型说明
typeString事件类型
timeStampInteger页面打开到触发事件所经过的毫秒数
targetObject触发事件的组件的一些属性值集合
currentTargetObject当前组件的一些属性值集合
detailObject额外的信息
touchesArray触摸事件,当前停留在屏幕中的触摸点信息的数组
changedTouchesArray触摸事件,当前变化的触摸点信息的数组


明天计划的事情:(一定要写非常细致的内容) 
遇到的问题:(遇到什么困难,怎么解决的) 
收获:(通过今天的学习,学到了什么知识)

小程序事件绑定,事件类型




返回列表 返回列表
评论

    分享到