uniapp上传预览视频组件封装
需求:要求视频拥有上传和预览功能,并且实现断点续存。
断点续存的重点在于:前端页面绑定表单值要与后端一致,这样在下一次进入页面能够请求后台接口,后台返回之前用户所填写的数据,展示在页面上,实现功能。
视频实现优化:
在uniapp中视频上传后有一个本地地址,前端可以在用户没有刷新时使用这个本地地址展示给用户,提高用户体验,因为又断点续存功能所以在用户刷新重新进入页面后,请求后台接口获取视频地址,这个地方后端可以返回一个压缩图片只有几k,当用户点击预览再展示给用户高清图。
<template>
<view class="container">
<!-- 默认展示视频第一帧 -->
<view class="image-upload-Item" v-for="(item,index) in uploadLists" :key="index">
<view class="image-upload-Item-video">
<video :disabled="false" :controls="false" :src="getFileUrl(item)">
<cover-view class="image-upload-Item-video-fixed" @click="previewVideo(getFileUrl(item))">
</cover-view>
<cover-view class="image-upload-Item-del" @click="imgDel(index)">×</cover-view>
</video>
<view class="image-upload-Item-video-fixed" @click="previewVideo(getFileUrl(item))"></view>
</view>
</view>
<!-- 上传按钮 -->
<view class="image-upload-Item image-upload-Item-add" @click="chooseFile">
<u-icon name="camera" color="#999" size="30"></u-icon>
</view>
<!-- 全屏预览视频 -->
<view class="preview-full" v-