微信小程序:6.事件

什么事事件

事件就是渲染层到逻辑层的通讯方式,比如提交表单,按钮点击都可以看作一个事件。

小程序中常用的事件

事件对象属性列表

当事件回调时,会收到一个事件对象event,他详细属性如夏表所示:

target和currentTarget的区别

target是触发该事件的源头组件,而currentTarget则是当前时间所绑定的事件:

bindtap的语法格式

在小程序中不会通过onclick进行鼠标点击时间,而是通过tap事件响应用户的触摸事件

复制代码
//在js中定义
outerHandle(e){
    console.log(e)
  }

<view class="outview">
  <button type="primary" bind:tap="outerHandle">按钮</button>
</view>

在事件处理函数中data汇总的数据赋值

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

点击按钮number进行增加

复制代码
<view class="outview">
  <text>{{number}}</text>
  <button type="primary" bind:tap="outerHandle">按钮</button>
</view>

事件传参

小程序中的事件穿参比较特殊,不能在绑定事件的同时进行传递参数

小程序中可以为组件童工data-自定义属性穿参,其中代表的是参数的名字,示例代码如下:

复制代码
<button bind:tap="btnhandle" data-info="{{2}}">事件穿参数</button>

最终info会被解析为参数的名字

数字2会被解析为参数的值

在事件处理函数中可以使用event.target.dataset.参数名,可以拿到具体参数值

复制代码
btnhandle(event){
    console.log(event.target.dataset)

    console.log(event.target.dataset.info)
  }

bindinput事件

在小程序中通过input来响应文本框输入事件

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

复制代码
<input type="text" bindinput="inputHandle"/>

2.在页面的.js文件中定义事件的处理函数:

复制代码
 inputHandle(e){
      console.log(e.detail.value)
  }

实现文本框和Data之间的数据同步

实现步骤

  1. 定义数据

  2. 渲染结构

  3. 美化样式

  4. 绑定input事件处理函数

    Page({

    /**
    * 页面的初始数据
    */
    data: {
    msg:"你好",
    },

2.在wxml中定义input绑定msg并且定义事件

复制代码
 inputHandle(e){
    // console.log(e.detail.value);
    this.setData({
      msg:e.detail.value
    })
  },
相关推荐
木易士心1 天前
一文读懂:微信小程序云数据库直连原理与使用指南
微信小程序·serverless
明月_清风1 天前
小程序云函数:从入门到全栈的“降维打击”指南
前端·微信小程序·小程序·云开发
拉不动的猪2 天前
移动端调试工具VConsole初始化时的加载阻塞问题
前端·javascript·微信小程序
WangHappy4 天前
不写 Canvas 也能搞定!小程序图片导出的 WebView 通信方案
前端·微信小程序
小时前端4 天前
微信小程序选不了本地文件?用 web-view + H5 一招搞定
前端·微信小程序·uni-app
icebreaker5 天前
Weapp-vite:原生模式之外,多一种 Vue SFC 选择
前端·vue.js·微信小程序
icebreaker5 天前
重走 Vue 长征路 Weapp-vite:编译链路与 Wevu 运行时原理拆解
前端·vue.js·微信小程序
大米饭消灭者8 天前
Taro是怎么实现一码多端的【底层原理】
微信小程序·taro
FliPPeDround9 天前
Vitest Environment UniApp:让 uni-app E2E 测试变得前所未有的简单
微信小程序·e2e·前端工程化
FliPPeDround9 天前
微信小程序自动化的 AI 新时代:wechat-devtools-mcp 智能方案
微信小程序·ai编程·mcp