@tap事件在uni-app抖音小程序上无效
@tap事件在uni-app抖音小程序上无效
项目 | 信息 |
---|---|
产品分类 | uniapp/小程序/字节跳动 |
PC开发环境操作系统 | Windows |
PC开发环境操作系统版本号 | Windows 11 专业版24H2 |
HBuilderX类型 | 正式 |
HBuilderX版本号 | 4.45 |
第三方开发者工具版本号 | 4.3.5 |
基础库版本号 | 3.52.0.14 |
项目创建方式 | HBuilderX |
示例代码:
<map v-if="jobDetails.X && jobDetails.Y" id="map" class="map" :height="500" show-location scale="15" enable-zoom enable-scroll
enable-satellite :latitude="jobDetails.Y" :longitude="jobDetails.X" :markers="marker"
[@tap](/user/tap)='handleClickMap'></map>
...
const handleClickMap = (e) => {
const {
detail
} = e
const {
latitude,
longitude
} = detail
popup.value.open()
}
操作步骤:
- 点击地图,直接打开popup组件,选择选项
预期结果:
- 点击地图,直接打开popup组件,选择选项
实际结果:
- 真机调试无效
bug描述:
@tap事件在模拟器上点击时有效的,但是真机调试就没有效果了
更多关于@tap事件在uni-app抖音小程序上无效的实战教程也可以访问 https://www.itying.com/category-93-b0.html
2 回复
模拟器正常,真机不正常?测试了哪些真机,多测几台安卓 ios 设备,说一下结果,并贴一下完整单页面源码方便我复现。
更多关于@tap事件在uni-app抖音小程序上无效的实战教程也可以访问 https://www.itying.com/category-93-b0.html
在uni-app的抖音小程序中,map组件的@tap事件确实存在兼容性问题。这是由于字节跳动小程序平台对map组件的事件处理机制与微信小程序有所不同。
解决方案:
<map [@click](/user/click)="handleClickMap"></map>
- 如果仍然无效,可以尝试使用catchtap:
<map catchtap="handleClickMap"></map>
- 或者使用bindtap:
<map bindtap="handleClickMap"></map>
- 如果上述方法都无效,建议使用cover-view覆盖一个透明按钮来实现点击事件:
<map>
<cover-view [@click](/user/click)="handleClickMap" style="width:100%;height:100%;opacity:0"></cover-view>
</map>