应需求开发一个微信小程序功能,一个列表中每一项都放一个分享按钮,分享当前类目中的不同标题、封面、链接。
思路一
touchstart事件会比tap事件靠前,先来验证一下
js代码
Page({
data: {
list : [
{
id : 1,
cover : '图片1链接',
title: '标题1'
},
{
id : 2,
cover : '图片2链接',
title: '标题2'
}
]
},
onShareAppMessage(e) {
console.log('onShareAppMessage');
},
touchstartHandle(e) {
console.log('touchstartHandle');
}
})
xml代码
<block wx:for="{{ list }}" wx:key="i">
<button type="primary" data-info="{{ item }}" bindtouchstart="touchstartHandle" open-type="share">{{ item.title }}</button>
</block>
结果,第一次的执行顺序是onShareAppMessage => touchstartHandle,第二次正常touchstartHandle => onShareAppMessage。坑看来比较大
思路二
如果列表是组件带出来太慢,分享还是拿不到列表的信息