zoukankan      html  css  js  c++  java
  • 小程序 事件

     什么是事件

    • 事件是视图层到逻辑层的通讯方式。
    • 事件可以将用户的行为反馈到逻辑层进行处理。
    • 事件可以绑定在组件上,当达到触发事件,就会执行逻辑层中对应的事件处理函数。
    • 事件对象可以携带额外信息,如 id, dataset, touches。  

     cancel  事件的使用方式

      catchtap不会冒泡,仅在当前元素触发

      在组件中绑定一个事件处理函数。如:做一个搜索框清空的效果

      在相对应的wxml文件中:

    1 <icon class='icon_cancel' catchtap='cancel' type="cancel" size="20"/>
    • 在相应的Page定义中写上相应的事件处理函数
      1 // 点击清除搜索内容
      2   cancel: function() {
      3     this.setData({
      4       searchValue: ''
      5     })
      6   },

      事件绑定和冒泡  

      事件绑定的写法同组件的属性,以 key、value 的形式。

    • key 以bindcatch开头,然后跟上事件的类型,如bindtapcatchtouchstart。自基础库版本 1.5.0 起,bindcatch后可以紧跟一个冒号,其含义不变,如bind:tap、、catch:touchstart
    • value 是一个字符串,需要在对应的 Page 中定义同名的函数。不然当触发事件的时候会报错。

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

    如在下边这个例子中,点击 inner view 会先后调用handleTap3handleTap2(因为tap事件会冒泡到 middle view,而 middle view 阻止了 tap 事件冒泡,不再向父节点传递),点击 middle view 会触发handleTap2,点击 outer view 会触发handleTap1

    1 <view id="outer" bindtap="handleTap1">
    2   outer view
    3   <view id="middle" catchtap="handleTap2">
    4     middle view
    5     <view id="inner" bindtap="handleTap3">
    6       inner view
    7     </view>
    8   </view>
    9 </view>

      

      

  • 相关阅读:
    《C# to IL》第一章 IL入门
    multiple users to one ec2 instance setup
    Route53 health check与 Cloudwatch alarm 没法绑定
    rsync aws ec2 pem
    通过jvm 查看死锁
    wait, notify 使用清晰讲解
    for aws associate exam
    docker 容器不能联网
    本地运行aws lambda credential 配置 (missing credential config error)
    Cannot connect to the Docker daemon. Is 'docker daemon' running on this host?
  • 原文地址:https://www.cnblogs.com/ldj3/p/9115458.html
Copyright © 2011-2022 走看看