微信小程序开发---事件的绑定

这篇具有很好参考价值的文章主要介绍了微信小程序开发---事件的绑定。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

目录

一、事件的概念

二、小程序中常用的事件

三、事件对象的属性列表

四、bindtap的语法格式

(1)绑定tap触摸事件

(2)编写处理函数

五、在事件处理函数中为data中的数据赋值

六、事件传参

七、bindinput的语法格式

八、实现文本框和data之间的数据同步


一、事件的概念

事件是渲染层到逻辑层的通讯方式。通过事件可以将用户在渲染层产生的行为,反馈到逻辑层进行业务的处理。

二、小程序中常用的事件

类型   绑定方式                      描述
tap    bindtap或bind:tap           手指触摸后马上离开,类似于HTML中的click事件 
input  bindinput或bind:input       文本框的输入事件 
change bindchange或bind:change     状态改变时触发 

三、事件对象的属性列表

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

属性            类型      说明
type           string    事件类型
timeStamp      Integer   页面打开到触发事件所经过的毫秒数
target         Object    触发事件的组件的一些属性值集合
currentTarget  Object    当前组件的一些属性集合
detail         Object    额外的信息
touches        Array     触摸事件,当前停留在屏幕中的触摸点信息的数组
changedTouches Array     触摸事件,当前变化的触摸点信息的数组

注意:

target和currentTarget的区别

target是触发该事件的源头组件,而currentTarget是当前事件所绑定的组件。

举例如下:

微信小程序开发---事件的绑定,微信小程序,微信小程序,小程序

点击了按钮后,点击事件会以冒泡的方式向外扩散,也会触发外层的view的tap事件处理函数,对于view来说:

e.target就是指触发事件的源头组件

e.currentTarget就是当前正在触发事件的那个组件,也就是view

四、bindtap的语法格式

在小程序中,不存在HTML中的onclick鼠标点击事件,而是通过tap事件来响应用户的触摸行为。一般分为两步:

(1)通过bindtap,可以为组件绑定tap触摸事件

(2)在页面的js文件中定义对应的事件处理函数,事件参数通过形参event(一般简写成e)来接受

(1)绑定tap触摸事件

<view>
 <button type="primary" bind:tap="hanshu">按钮</button>
</view>

(2)编写处理函数

//js文件中
hanshu(e){
    console.log('666')
 }

五、在事件处理函数中为data中的数据赋值

通过调用this.setData(dataObject)方法,可以给页面中data中的数据重新赋值

案例:制作一个按钮,点击他之后,count+1,并将count值显示在页面

//js文件
 hanshu(e){
   this.setData({
     count:this.data.count+1
   })
 }



<view>
 <view>count={{count}}</view>
 <button type="primary" bind:tap="hanshu">点击我count+1</button>
</view>

六、事件传参

小程序中的传参不能在绑定事件的同时为事件处理函数传递参数,如下将是不正确的。

<button bind:tap="hanshu(123)">按钮</button>

因为小程序会将bintap的属性值全部当成事件名称来处理,相当于要调用一个名称是hanshu(123)的事件处理函数。

但是我们可以为组件提供data-*自定义属性传参,其中*代表的是参数的名字,如下:

<view>
 <view>count={{count}}</view>
 <button type="primary" bind:tap="hanshu" data-i="{{10}}">点击我count</button>
</view>

data后面的i可以自己取名称,i会被解析成参数的名字,10是参数的值,在事件处理函数中,通过event.target.dataset.参数名称也就是event.target.dataset.i可以获取参数的值。

 hanshu(e){
   this.setData({
     count:this.data.count+e.target.dataset.i
   })
 }

七、bindinput的语法格式

在小程序中,通过input事件来响应文本框的输入事件,语法格式如下

(1)通过bindinput可以为文本框绑定输入事件


<view>
  <input bindinput="handl" />
</view>

(2)在js文件处理事件函数

handl(e){
    console.log(e.detail.value)
  },

八、实现文本框和data之间的数据同步

handl(e){
    this.setData({
      msg:e.detail.value
    })
  },


<input bindinput="handl" value="{{msg}}" />

<view>msg={{msg}}</view>

 文章来源地址https://www.toymoban.com/news/detail-699488.html

到了这里,关于微信小程序开发---事件的绑定的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • 微信小程序(二)事件绑定

    注释很详细,直接上代码 上一篇 新增内容: 点击事件绑定 注册页面 设置页面初始化数据 事件处理函数的实现 更新数据并更新视图 源码: index.wxml index.js 效果演示: 按钮点击前 按钮点击后 下一篇

    2024年01月17日
    浏览(23)
  • 【微信小程序】一文解忧,事件绑定

    🍒 观众老爷们好呀,小程序系列的新文章又来啦,即使是暑假也不能停止学习呀!上文我们详细了解了微信小程序WXML模板语法中的数据绑定,小程序中的事件绑定也是我们必须掌握的方法。 🍒 那么现在我们就开始学习吧,小本本快拿出来记笔记呀。 首先我们来理清事件的

    2024年02月02日
    浏览(35)
  • 【小程序教程】微信小程序之事件绑定

    微信小程序的事件绑定是非常重要的一部分,它可以让我们的小程序与用户进行交互,实现各种功能,例如点击按钮、滑动页面、输入内容等等。本篇博文将详细介绍微信小程序如何进行事件绑定,并且给出相关的代码示例,方便大家理解。 在微信小程序中,通过在标签上绑

    2024年02月04日
    浏览(29)
  • 微信小程序数据绑定和事件触发

    数据绑定和修改 微信小程序数据绑定是指将数据和视图进行关联,当数据发生变化时,视图也会相应地发生变化。微信小程序数据绑定主要有以下几种方式: 双向绑定:双向绑定是指数据和视图之间的双向关联,当数据发生变化时,视图也会相应地发生变化,反之亦然。在

    2024年02月10日
    浏览(45)
  • 【微信小程序---绑定事件bindtap跳转】

    1.所需要跳转的页面进行 bindtap=“f0” 绑定所需要的地方 2.在js页面进行 f0:function(event){函数指向功能} 以上是绑定按钮跳转事件 wx.navigateTo() 保留当前页面 ,跳转到指定页面 可以返回到原页面 wx.redirectTo() 关闭当前页面 ,跳转指定页面  不能返回 wx.switchTab() 跳转到 tabBar 页面

    2024年02月10日
    浏览(47)
  • 微信小程序学习之数据绑定,事件绑定,事件传参与数据同步的学习记录

    数据绑定的基本原则:在data中定义数据,在wxml中使用数据 1.1. 在data中定义数据 在data中定义数据,找到页面对应的.js文件,然后把数据定义到data中即可。 pages/list/list.js 1.2. 在wxml中渲染数据 (mustache语法) mustache语法,插值表达式 将data中的数据绑定到页面中渲染,使用mu

    2024年02月13日
    浏览(38)
  • 【无标题】微信小程序如果VIEW绑定点击事件

    微信小程序如果VIEW绑定点击事件,而且绑定的VIEW中存在许多子元素,会出现一下问题: 在回调函数中使用e.target来获取消息,虽然触发了点击事件,但是传递的消息是空值,只有点击在空白区域才会返回有效值。 解决方法:使用e.currentTarget来获取消息。 js回调函数: wxml代

    2024年02月08日
    浏览(34)
  • 【微信小程序】通过绑定点击事件来实现点击交互

    在微信小程序中,可以通过绑定点击事件来实现点击交互。以下是点击事件的实现步骤: 在WXML文件中,找到需要绑定点击事件的元素,例如按钮、图片等。 在该元素上添加 bindtap 属性,并指定一个对应的事件处理函数,例如: 在对应的页面或组件的JS文件中,定义事件处理

    2024年02月14日
    浏览(37)
  • 微信小程序:tabbar、事件绑定、数据绑定、模块化、模板语法、尺寸单位

    目录 1. tabbar 1.1 什么是tabbar  1.2 配置tabbar  2. 事件绑定 2.1 准备表单 2.2 事件绑定 2.3 冒泡事件及非冒泡事件  3. 数据绑定 3.1 官方文档 4. 关于模块化 5. 模板语法 6. 尺寸单位 下图中标记出来的部分即为tabbar:    官方说明文档:   说明: pagePath中指定的页面,必须在app.jso

    2024年02月04日
    浏览(42)
  • 【微信小程序】-- WXML 模板语法 - 事件绑定 -- tap & input (十)

    💌 所属专栏:【微信小程序开发教程】 😀 作  者:我是夜阑的狗🐶 🚀 个人简介:一个正在努力学技术的CV工程师,专注基础和实战分享 ,欢迎咨询! 💖 欢迎大家:这里是CSDN,我总结知识的地方,喜欢的话请三连,有问题请私信 😘 😘 😘   大家好,又见面了,

    2024年02月01日
    浏览(28)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包