diff --git a/uni_modules/uview-ui/components/u-upload/u-upload.vue b/uni_modules/uview-ui/components/u-upload/u-upload.vue
index 1dac8a77..9ca481e4 100644
--- a/uni_modules/uview-ui/components/u-upload/u-upload.vue
+++ b/uni_modules/uview-ui/components/u-upload/u-upload.vue
@@ -18,6 +18,19 @@
height: $u.addUnit(height)
}]"
/>
+
- {{item.isVideo || (item.type && item.type === 'video') ? '视频' : '文件'}}
+ 文件
isVideoFile(item))
- .map((item) =>
- Object.assign(Object.assign({}, item), {
- type: 'video'
- })
- ),
- current: index,
- fail() {
- uni.$u.toast('预览视频失败')
- },
- });
- },
- onClickPreview(event) {
- const {
- index
- } = event.currentTarget.dataset;
- const item = this.data.lists[index];
- this.$emit(
- 'clickPreview',
- Object.assign(Object.assign({}, item), this.getDetail(index))
- );
- }
+ onPreviewVideo(event) {
+ if (!this.data.previewFullImage) return;
+ const { index } = event.currentTarget.dataset;
+ const { lists } = this.data;
+ uni.previewMedia({
+ sources: lists
+ .filter((item) => isVideoFile(item))
+ .map((item) =>
+ Object.assign(Object.assign({}, item), {
+ type: "video",
+ })
+ ),
+ current: index,
+ fail() {
+ uni.$u.toast("预览视频失败");
+ },
+ });
+ },
+ onClickPreview(item) {
+ this.$emit("clickPreview", item);
+ },
}
}