实现长按图标实现拍摄视频,类似微信,但是在苹果手机长按图标后没有触发uni.chooseVideo,安卓正常,经调试,longpress事件是触发的,但是无法触发uni.chooseVideo
- 发布:2024-09-07 17:17
- 更新:2024-09-07 17:17
- 阅读:112
产品分类: uniapp/H5
PC开发环境操作系统: Windows
PC开发环境操作系统版本号: Win11
HBuilderX类型: 正式
HBuilderX版本号: 3.99
浏览器平台: Safari
浏览器版本: 最新
项目创建方式: HBuilderX
操作步骤:
预期结果:
实现长按图标实现拍摄视频,类似微信
实现长按图标实现拍摄视频,类似微信
实际结果:
苹果手机长按不触发uni.chooseVideo(长按事件longpress是触发的)
苹果手机长按不触发uni.chooseVideo(长按事件longpress是触发的)
bug描述:
IOS里longpress 事件无法调用uni.chooseVideo
代码如下
<view class="boxItem" v-for="(i, index) in boxList" @longpress="getVIdeo(index+1)" @click="boxFn(index + 1)" :key="index">
<image style="width: 70rpx; height: 70rpx; padding-top: 15rpx" :src="i.icon"></image>
<view class="lableItem"> {{ $t(i.label) }}</view>
</view>
getVIdeo(index) {
if(index===2){
uni.chooseVideo({
sourceType: ['album', 'camera'],
success: async (res) => {
console.log(res);
this.fileList1 = res.tempFilePath
let traceId = new Date().getTime().toString() + '_s' + this.chatterId
this.$store.commit("setWebsocketData", {
groupId: this.group.id,
list: [{
content: this.fileList1,
fromId: this.chatterId,
traceId,
status: 1,
video: "video",
}, ],
});
const result = await Upload.uploadFilePromise(this.fileList1)
let videoSrc = result[0].url
this.videoMap.set(traceId,videoSrc)
this.$store.dispatch(
"websocketSend",
JSON.stringify({
path: "/p2gx",
groupId: this.group.id,
traceId,
fromId: this.chatterId,
rd: Math.floor(Math.random() * 100),
body: videoSrc,
})
);
},
});
}
},
0 个回复