微信小程序怎样给事件传值的

  1. 通过自定义属性传值: 在触发事件的组件上,可以通过自定义属性将需要传递的值绑定到事件对象上。在事件处理函数中,通过event.currentTarget.dataset来获取自定义属性的值。

    示例代码:

    复制代码
    htmlCopy Code<!-- 触发事件的组件 -->
    <view data-value="Hello" bindtap="handleTap">点击我</view>
    
    <!-- 事件处理函数 -->
    <script>
    Page({
      handleTap(event) {
        const value = event.currentTarget.dataset.value;
        console.log(value); // 输出 "Hello"
      }
    });
    </script>
  2. 通过事件对象传值: 在触发事件时,可以使用event.detail将值传递给事件处理函数。在触发事件时,可以使用triggerEvent方法触发自定义事件,并通过detail选项传递值。在事件处理函数中,可以通过event.detail获取传递的值。

    示例代码:

    复制代码
    htmlCopy Code<!-- 触发事件的组件 -->
    <button bindtap="handleTap">点击我</button>
    
    <!-- 事件处理函数 -->
    <script>
    Component({
      methods: {
        handleTap(event) {
          const value = 'Hello';
          this.triggerEvent('customEvent', { detail: value });
        }
      }
    });
    </script>

    在另一个组件中监听该事件并获取传递的值:

    复制代码
    htmlCopy Code<!-- 监听事件的组件 -->
    <component-name bind:customEvent="handleCustomEvent"></component-name>
    
    <!-- 事件处理函数 -->
    <script>
    Page({
      handleCustomEvent(event) {
        const value = event.detail;
        console.log(value); // 输出 "Hello"
      }
    });
    </script>
相关推荐
The_era_achievs_hero3 小时前
微信小程序71~80
微信小程序·小程序
dssxyz4 小时前
uniapp打包微信小程序主包过大问题_uniapp 微信小程序时主包太大和vendor.js过大
javascript·微信小程序·uni-app
!win !5 小时前
被老板怼后,我为uni-app项目引入环境标志
前端·小程序·uni-app
澄江静如练_8 小时前
微信小程序发体验版
微信小程序·小程序
流口水的兔子12 小时前
作为一个新手,如果让你去用【微信小程序通过BLE实现与设备通讯】,你会怎么做,
前端·物联网·微信小程序
一念杂记12 小时前
免费开源!微信小程序商城源码,快速搭建你的线上商城系统!
微信小程序·uni-app
张晓~1833994812114 小时前
数字人源码部署流程分享--- PC+小程序融合方案
javascript·小程序·矩阵·aigc·文心一言·html5
The_era_achievs_hero16 小时前
微信小程序61~70
微信小程序·小程序
编程猪猪侠17 小时前
Taro+Vue3实现微信小程序富文本编辑器组件开发指南
vue.js·微信小程序·taro
汤姆yu1 天前
基于微信小程序的学校招生系统
微信小程序·小程序·招生小程序