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

发布时间:2023年12月17日

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

通过自定义属性传值

通过自定义属性传值: 在触发事件的组件上,可以通过自定义属性将需要传递的值绑定到事件对象上。在事件处理函数中,通过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>

通过事件对象传值

通过事件对象传值: 在触发事件时,可以使用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>

到这里也就结束了,希望对您有所帮助。

文章来源:https://blog.csdn.net/weixin_71893790/article/details/135029763
本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。