bind:tap="onLike" 中不能添加参数 及 dataset 传值

Posted qq254980080

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了bind:tap="onLike" 中不能添加参数 及 dataset 传值相关的知识,希望对你有一定的参考价值。

<view bind:tap="onLike({{id}})"></view>

//Component "pages/book-detail/book-detail" does not have a method "onLike(7)" to handle event "tap".

//bind:tap 中函数如果加参数,小程序会默认寻找 onLike(7)(){}这个函数

//bind:tap 引号中的内容全部看出函数名

 

如果需要传值,组件中用data-value

在组件中可以定义数据,这些数据将会通过事件传递给 SERVICE。 书写方式: 以data-开头,多个单词由连字符-链接,不能有大写(大写会自动转成小写)如data-element-type,最终在 event.currentTarget.dataset 中会将连字符转成驼峰elementType。

 

示例:

<view data-alpha-beta="1" data-alphaBeta="2" bindtap="bindViewTap">
  DataSet Test
</view>

 

Page({
  bindViewTap(event) {
    event.currentTarget.dataset.alphaBeta === 1 // - 会转为驼峰写法
    event.currentTarget.dataset.alphabeta === 2 // 大写会转为小写
  }
})

 

以上是关于bind:tap="onLike" 中不能添加参数 及 dataset 传值的主要内容,如果未能解决你的问题,请参考以下文章

小程序--e.target和e.currentTarget区别

微信小程序复制文本到剪切板

微信小程序 tab选项卡

java.security.AccessControlException:access denied("java.io.FilePermission" "文件路径&quo

事件小程序事件类型及绑定说明

事件处理