WXML模版语法-事件绑定
知识点1:什么是事件
- 事件是渲染层到逻辑层的通讯方式。通过事件可以将用户在渲染层产生的行为,反馈到逻辑层进行业务的处理。
知识点2:小程序中常用的事件
类型 | 绑定方式 | 事件描述 |
tap | bindtap或bind:tap | 手指触摸后马上离开,类似于 HTML中的click 事件 |
input | bindinput 或 bind:input | 文本框的输入事件 |
change | bindchange 或 bind:change | 状态改变时触发 |
知识点3:事件对象的属性列表
- 当事件回调触发的时候,会收到一个事件对象event,它的详细属性列表如下:
属性 | 类型 | |
type | String | 事件类型 |
timeStamp | Integer | 页面打开到触发事件所经过的毫秒数 |
target | Object | 触发事件的组件的一些属性值集合 |
currentTarget | Object | 当前组件的一些属性值集合 |
detail | Object | 额外的信息 |
touches | Array | 触摸事件,当前停留在屏幕中的触摸点信息的数组 |
changedTouches | Array | 触摸事件,当前变化的触摸点信息的数组 |
知识点4:target和currentTarget的区别
- target是触发该事件的源头组件,而currentTarget则是当前事件所绑定的组件。
<button
bind:tap="targetClick"
type="primary"
plain="true"
id="123"
>target按钮</button>
Page({targetClick(event){console.log(event)}
})
{type: "tap", timeStamp: 2827, target: {…}, currentTarget: {…}, mark: {…}, …}
changedTouches: [{…}]
currentTarget: {id: "123", offsetLeft: 0, offsetTop: 0, dataset: {…}}
detail: {x: 165.15625, y: 35.328125}
mark: {}
mut: false
target: {id: "123", offsetLeft: 0, offsetTop: 0, dataset: {…}}
timeStamp: 2827
touches: [{…}]
type: "tap"
__evName: "tap"
_allowWriteOnly: true
_relatedInfo: {anchorTargetText: "target按钮", anchorRelatedText: "", anchorTapTime: 1737007035902}
_requireActive: true
_userTap: true
__proto__: Object
<view bind:tap="targetClick" id="456" ><button type="primary"
id="123"
>target按钮</button></view>
Page({targetClick(event){console.log(event)}
})
{type: "tap", timeStamp: 4896, target: {…}, currentTarget: {…}, mark: {…}, …}
changedTouches: [{…}]
currentTarget: {id: "456", offsetLeft: 0, offsetTop: 0, dataset: {…}}
detail: {x: 97.828125, y: 60.65625}
mark: {}
mut: false
target: {id: "123", offsetLeft: 0, offsetTop: 25, dataset: {…}}
timeStamp: 4896
touches: [{…}]
type: "tap"
__evName: "tap"
_allowWriteOnly: true
_relatedInfo: {anchorTargetText: "target按钮", anchorRelatedText: "", anchorTapTime: 1737007515471}
_requireActive: true
_userTap: true
__proto__: Object
- 点击内部的按钮时,点击事件以冒泡的方式向外扩散,也会触发外层view 的tap 事件处理函数。
- target 指向的是触发事件的源头组件,因此,target是内部的按钮组件。(事件的触发者)
- currentTarget 指向的是当前正在触发事件的那个组件,因此,e.currentTarget 是当前的 view 组件。(事件的响应者)
知识点5:bindtap 语法格式
- 在小程序中,不存在HTML中的onClick鼠标点击事件,而是通过tap事件来响应用户的触摸行为。
<!-- 定义 -->
<button type="primary" bindtap="btnTapHandler">登录</button>
Page({//bindtap的实现btnTapHandler(e){console.log(e)}
})
知识点6:在事件处理函数中为data中的数据赋值
- 通过调用this.setData(dataObject)方法进行赋值。
<!-- 定义 -->
<button type="primary" bindtap="changeCountHandler">当前计数:{{countNum}}</button>
Page({data:{
countNum:0
},
//target 实现targetClick(event){console.log(event)},//bindtap 实现btnTapHandler(e){console.log(e)},//data 赋值changeCountHandler(e){this.setData({countNum:this.data.countNum+1})}
})
知识点7:事件传参
- 可以为组件提供data-*自定义属性传参,其中*代表的是参数的名字。
- 通过event中解析出传递的参数。
<!-- 如果传递数字需要用{{}}包括,否则默认为字符串 -->
<button type="primary" bindtap="eventHandler" data-name="Jeck" data-age="{{18}}">事件传参</button>
//data 事件传参eventHandler(e){console.log(e.target.dataset.name);}
知识点8:bindinput的语法格式
- 在小程序中,通过input事件来响应文本框的输入事件。
<view>------------------bindinput--------------------</view>
<input bind:tap="inputHandler" placeholder="请输入"></input>
//input 事件inputHandler(e){console.log(e)}
相关文章:

WXML模版语法-事件绑定
知识点1:什么是事件 事件是渲染层到逻辑层的通讯方式。通过事件可以将用户在渲染层产生的行为,反馈到逻辑层进行业务的处理。 知识点2:小程序中常用的事件 类型绑定方式事件描述tapbindtap或bind:tap手指触摸后马上离开,类似于…...

楚慧杯Web
WEB1 计算器 import requests rrequests.session() data{"answer":0} url"" for i in range(30):if i0:rrequests.get(url)dr.textdd.split(":")[22][1:].split("<br>")[0]data["answer"]str(eval(d))print(eval(d)…...

工商业储能电站能量管理本地系统及多站点云平台
一、储能站就地监控 Acre1-2000MG储能能量管理系统是针对工商业储能电站研制的本地化能量管理系统,可实现了储能电站的数据采集、数据处理、数据存储、数据查询与分析、可视化监控、报警管理、统计报表、策略管理、历史曲线等功能。其中策略管理,支持多…...

HTML标签笔记
黑马程序员视频地址:黑马程序员前端JavaScript入门到精通全套视频教程https://www.bilibili.com/video/BV1Y84y1L7Nn?vd_source0a2d366696f87e241adc64419bf12cab&spm_id_from333.788.videopod.episodes 标题与段落 标题 <h1>~<h6> 段落 <p…...

pthread_create函数
函数原型 pthread_create 是 POSIX 线程(pthread)库中的一个函数,用于在程序中创建一个新线程。 #include <pthread.h>int pthread_create(pthread_t *thread, const pthread_attr_t *attr,void *(*start_routine) (void *), void *a…...

C# 并发和并行的区别--16
目录 并发和并行 一.并发 定义 特点 代码示例 代码解释 二.并行 定义 特点 在C#中的体现 代码示例 代码解释 三.并发和并行的区别 四 .如何在C#中选择并发还是并行 1.考虑任务类型 2.代码示例 3.注意事项 五.总结 并发和并行 在编程领域,并发和并行是两个密切…...

Java日志配置
1.导入依赖 <dependency><groupId>org.apache.logging.log4j</groupId><artifactId>log4j-core</artifactId><version>2.23.1</version></dependency><dependency><groupId>org.apache.logging.log4j</groupI…...

python中的RPA->playwright自动化录制脚本实战案例笔记
playwright录制功能使用绕过登录操作 1、首先安装playwright pip install playwright2、 安装支持的浏览器 playwright install # 安装支持的浏览器:cr, chromium, ff, firefox, wk 和 webkit3、接着在自己的项目下运行录制命令: playwright codegen…...

Linux查看日志命令
问题排查过程: 1. 评估问题现象是否是操作问题,还是服务bug,页面出异常信息是后端,没抛异常信息有可能是前端渲染问题,F12抓包看那个字段没有数据(有时候需要前端帮忙确定是哪一个字段)&#x…...

(8)ERC20详细介绍
ERC20 是以太坊上的一种代币标准(同质化代币),由 Fabian Vogelsteller 在 2015 年提出。它定义了一组通用的接口和规则,使得开发者可以创建可互操作的代币。ERC20 代币在以太坊生态系统中非常流行,广泛应用于各种去中心…...

opencv projectPoints函数 computeCorrespondEpilines函数 undistortPoints函数
opencv projectPoints函数 cv::projectPoints 是 OpenCV 中用于将三维点投影到二维图像平面的函数。它通常用于计算在相机坐标系下的三维点在图像坐标系中的位置,考虑了相机的内参和外参。 函数原型 void cv::projectPoints(InputArray objectPoints,InputArray …...

springboot集成websocket实现实时大量数据,效率性能高
前言 小编我将用CSDN记录软件开发求学之路上亲身所得与所学的心得与知识,有兴趣的小伙伴可以关注一下! 也许一个人独行,可以走的很快,但是一群人结伴而行,才能走的更远!让我们在成长的道路上互相学习&…...

游戏引擎学习第80天
Blackboard:增强碰撞循环,循环遍历两种类型的 t 值 计划对现有的碰撞检测循环进行修改,以便实现一些新的功能。具体来说,是希望处理在游戏中定义可行走区域和地面的一些实体。尽管这是一个2D游戏,目标是构建一些更丰富…...

Windows 上的 MySQL 8.4.3 和 WSL(Ubuntu)的 MySQL 8.0.40 之间配置 主从同步
在 Windows 上的 MySQL 8.4.3 和 WSL(Ubuntu)的 MySQL 8.0.40 之间配置 主从同步(Master-Slave Replication) 的过程略有不同,因为两者的 MySQL 版本和环境存在差异。以下是详细步骤,帮助你完成跨平台的主从…...

【狂热算法篇】探秘图论之 Floyd 算法:解锁最短路径的神秘密码(通俗易懂版)
: 羑悻的小杀马特.-CSDN博客羑悻的小杀马特.擅长C/C题海汇总,AI学习,c的不归之路,等方面的知识,羑悻的小杀马特.关注算法,c,c语言,青少年编程领域.https://blog.csdn.net/2401_82648291?spm1010.2135.3001.5343 在本篇文章中,博主将带大家去学习所谓的…...

Sentinel配置流控规则详解
前言 在微服务架构中,流量控制(Flow Control)是保障服务稳定性的重要手段之一。Sentinel作为一款开源的流量控制、熔断降级Java库,以其丰富的应用场景和完善的监控能力,在微服务保护中扮演了重要角色。本文将详细介绍…...

解锁动态规划的奥秘:从零到精通的创新思维解析(6)
解锁动态规划的奥秘:从零到精通的创新思维解析(6) 前言: 在动态规划的众多问题中,多状态DP问题是一个非常重要的类别。它的难点在于如何设计合适的状态表示和转移方程,从而高效地解决问题。 多状态DP的核…...

Qwen2.5 3B、7B、14B在文本按照规范进行标准化改写任务上的表现
任务介绍:军事杂志方向资料标准化改写任务 1. 任务目标 本任务的目标是对军事杂志领域的非标准化资料进行改写,确保其符合军事文献的写作规范和标准格式。通过改写,保留原文的核心内容和信息,同时提升语言的准确性、简洁性和专业…...

Oracle报错ORA-01078、LRM-00109
虚拟机异常关机后,rac数据库备机无法启动数据库,报错如下 解决方法: 找到如下路径文件 执行: cp init.ora.016202516818 /u01/app/oracle/product/19.3.0/db/dbs/ mv init.ora.016202516818 initplm2.ora 再次进入命令行sqlpl…...

免费为企业IT规划WSUS:Windows Server 更新服务 (WSUS) 之快速入门教程(一)
哈喽大家好,欢迎来到虚拟化时代君(XNHCYL),收不到通知请将我点击星标!“ 大家好,我是虚拟化时代君,一位潜心于互联网的技术宅男。这里每天为你分享各种你感兴趣的技术、教程、软件、资源、福利…...

Titans 架构中的记忆整合:Memory as a Context;Gated Memory;Memory as a Layer
Titans 架构中的记忆整合 Titans 架构中的记忆整合 Memory as a Context(MAC)变体:在处理长序列数据时,将序列分段,对于当前段 S ( t ) S^{(t)}...

无缝过渡:将 Ansys 子结构模型转换为 Nastran
了解如何将 Ansys 子结构模型无缝转换为 Nastran,以满足有效载荷动态模型要求 Ansys 子结构模型的优势 Ansys 子结构模型为从事大型装配体结构分析和仿真的工程师和分析师提供了多项优势。 这些模型通过将复杂结构划分为更小、更易于管理的子结构,可以…...

小哆啦的跳跃挑战:能否突破迷宫的极限?
小哆啦开始力扣每日一题的第六天 https://leetcode.cn/problems/jump-game/description/ 小哆啦的跳跃挑战:能否突破迷宫的极限? 第一阶段:小哆啦的初次尝试 —— 盲目跳跃 小哆啦刚进入跳跃之城,他决定采用一种非常直接的方法来…...

KubeSphere部署安装,接入KubeKey安装的k8s集群
KubeSphere安装接入KubeKey安装的k8s集群 文章目录 KubeSphere安装接入KubeKey安装的k8s集群 一.NFS安装配置1.服务器安装NFS服务2.下载并部署 NFS Subdir External Provisioner1).下载部署文件2).创建 NameSpace3).创建 RBAC 资源4).配置 deployment.yaml5).部署 Storage Clas…...

Object常用的方法及开发中的使用场景
在前端开发中,Object 对象提供了许多常用的方法,这些方法帮助我们操作对象的属性和结构。以下是常用的 Object 方法及其功能简要说明: 对象常用的方法 1. 创建对象 Object.create(proto[, propertiesObject]) 创建一个具有指定原型对象和属性…...

SQL2000在win10上安装的方法
安装前最好先关闭防火墙和一些杀毒软件,因为这些软件在安装过程中可能会碰到注册表等一下杀毒软件比较敏感的地带,如果违反杀毒软件的规则会被当做病毒强行终止删除 首相找到C盘下window文件中的sysWOW64文件 鼠标右键,点击属性、安全、高级 …...

Windows图形界面(GUI)-QT-C/C++ - QT 对话窗口
公开视频 -> 链接点击跳转公开课程博客首页 -> 链接点击跳转博客主页 目录 模态对话框 非模态对话框 文件对话框 基本概念 静态函数 常见属性 颜色对话框 基本概念 静态函数 常见属性 字体对话框 基本概念 静态函数 常见属性 输入对话框 基本概念 …...

Java语言的数据结构
Java语言中的数据结构 引言 在计算机科学中,数据结构是指一种特定的方式来组织和存储数据,以便能够高效地进行访问和修改。Java作为一种广泛使用的编程语言,其内置的数据结构和集合框架为程序员提供了便利的工具来管理数据。本文将深入探讨…...

【12】Word:张老师学术论文❗
目录 题目 NO2 NO3 NO4 NO5 NO6 NO7.8 题目 NO2 布局→页面设置→纸张:A4→页边距:上下左右边距→文档网格:只指定行网格→版式:页眉和页脚:页脚距边界:1.4cm居中设置论文页码:插入…...

大疆最新款无人机发布,可照亮百米之外目标
近日,DJI 大疆发布全新小型智能多光旗舰 DJI Matrice 4 系列,包含 Matrice 4T 和 Matrice 4E 两款机型。DJI Matrice 4E 价格为27888 元起,DJI Matrice 4T价格为38888元起。 图片来源:大疆官网 DJI Matrice 4E DJI Matrice 4T D…...