企业网站特色建设,那块做微信平台网站,wordpress支付,怎么样建设一个电影网站视频下载微信小程序data-item设置获取不到数据的问题
简单说明#xff1a; 在微信小程序中#xff0c;通过列表渲染使用wx:for根据数组中的每一项重复渲染组件。同时使用bindtap给每一项绑定点击事件clickItem#xff0c;再通过data-item绑定数据。 **问题#xff1a;**通过data-i…微信小程序data-item设置获取不到数据的问题
简单说明 在微信小程序中通过列表渲染使用wx:for根据数组中的每一项重复渲染组件。同时使用bindtap给每一项绑定点击事件clickItem再通过data-item绑定数据。 **问题**通过data-item绑定的数据在点击事件中获取不到。
问题示例
view wx:for{{array}} wx:for-indexidx wx:for-itemitemName bindtapclickItem data-item{{ itemName}}{{idx}}: {{itemName.message}}
/view在js文件中通过clickItem函数的event对象获取不到绑定的itemName数据
clickItem: function (e) {console.log(e.currentTarget.dataset.itemName)
}可能原因
wx:for-item设置当前元素变量名不要使用驼峰命名用全小写不然渲染正常但是data-item设置会获取不到。因为它找不到所以到函数event对象里面就没有itemName。
view wx:for{{array}} wx:for-indexidx wx:for-itemitemname bindtapclickItem data-item{{ itemname}}{{idx}}: {{itemname.message}}
/viewclickItem: function (e) {console.log(e.currentTarget.dataset.itemname)
}原因 wx:for-item设置当前元素变量名时允许驼峰命名且不会自动将大写字母转为小写字母。而以data-开头自定义组件数据时命名会将连字符转换成驼峰大写字母转成小写字母。
意思就是wx:for-item中命名的itemName在data-item中会被自动转换成itemname就变成两个东西所以是获取不到的因此最好统一用小写或者在data-item中使用“item-name”
官方文档https://developers.weixin.qq.com/miniprogram/dev/framework/view/wxml/event.html#%E4%BA%8B%E4%BB%B6%E7%9A%84%E4%BD%BF%E7%94%A8%E6%96%B9%E5%BC%8F
在dataset说明部分有命名的相关说明。**
补充介绍
** wx-for的注意事项 当 wx:for 的值为字符串时会将字符串解析成字符串数组
view wx:forarray{{item}}
/view等同于
view wx:for{{[a,r,r,a,y]}}{{item}}
/view注意 花括号和引号之间如果有空格将最终被解析成为字符串
view wx:for{{[1,2,3]}} {{item}}
/view等同于
view wx:for{{[1,2,3] }} {{item}}
/view另外花括号内花括号与变量之间允许存在空格
官方文档https://developers.weixin.qq.com/miniprogram/dev/reference/wxml/list.htmlend
如果对你有帮助记得点赞噢~~