mirror of https://github.com/halo-dev/halo-admin
增加对文件类型的判断,不是图片则不支持预览
parent
f8416ea250
commit
d811428f0a
|
@ -18,7 +18,8 @@
|
||||||
:paragraph="{rows: 8}"
|
:paragraph="{rows: 8}"
|
||||||
>
|
>
|
||||||
<div class="attach-detail-img">
|
<div class="attach-detail-img">
|
||||||
<img :src="attachment.path">
|
<div v-show="nonsupportPreviewVisible">此文件不支持预览</div>
|
||||||
|
<img :src="attachment.path" v-if="photoPreviewVisible">
|
||||||
</div>
|
</div>
|
||||||
</a-skeleton>
|
</a-skeleton>
|
||||||
</a-col>
|
</a-col>
|
||||||
|
@ -74,7 +75,7 @@
|
||||||
<span slot="title">附件大小:</span>
|
<span slot="title">附件大小:</span>
|
||||||
</a-list-item-meta>
|
</a-list-item-meta>
|
||||||
</a-list-item>
|
</a-list-item>
|
||||||
<a-list-item>
|
<a-list-item v-if="photoPreviewVisible">
|
||||||
<a-list-item-meta :description="attachment.height+'x'+attachment.width">
|
<a-list-item-meta :description="attachment.height+'x'+attachment.width">
|
||||||
<span slot="title">图片尺寸:</span>
|
<span slot="title">图片尺寸:</span>
|
||||||
</a-list-item-meta>
|
</a-list-item-meta>
|
||||||
|
@ -100,7 +101,7 @@
|
||||||
</span>
|
</span>
|
||||||
</a-list-item-meta>
|
</a-list-item-meta>
|
||||||
</a-list-item>
|
</a-list-item>
|
||||||
<a-list-item>
|
<a-list-item v-if="photoPreviewVisible">
|
||||||
<a-list-item-meta>
|
<a-list-item-meta>
|
||||||
<span slot="description">![{{ attachment.name }}]({{ attachment.path }})</span>
|
<span slot="description">![{{ attachment.name }}]({{ attachment.path }})</span>
|
||||||
<span slot="title">
|
<span slot="title">
|
||||||
|
@ -156,7 +157,10 @@ export default {
|
||||||
return {
|
return {
|
||||||
detailLoading: true,
|
detailLoading: true,
|
||||||
editable: false,
|
editable: false,
|
||||||
photo: {}
|
photo: {},
|
||||||
|
photoPreviewVisible: false,
|
||||||
|
vedioPreviewVisible: false,
|
||||||
|
nonsupportPreviewVisible: false
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
model: {
|
model: {
|
||||||
|
@ -189,6 +193,13 @@ export default {
|
||||||
if (newValue) {
|
if (newValue) {
|
||||||
this.loadSkeleton()
|
this.loadSkeleton()
|
||||||
}
|
}
|
||||||
|
},
|
||||||
|
attachment: function(newValue, oldValue) {
|
||||||
|
if (newValue) {
|
||||||
|
var attachment = newValue
|
||||||
|
var mediaType = attachment.mediaType
|
||||||
|
this.handleJudgeMediaType(mediaType)
|
||||||
|
}
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
methods: {
|
methods: {
|
||||||
|
@ -250,6 +261,24 @@ export default {
|
||||||
},
|
},
|
||||||
onClose() {
|
onClose() {
|
||||||
this.$emit('close', false)
|
this.$emit('close', false)
|
||||||
|
},
|
||||||
|
handleJudgeMediaType(mediaType) {
|
||||||
|
// 判断文件类型
|
||||||
|
if(mediaType) {
|
||||||
|
var prefix = mediaType.split('/')[0]
|
||||||
|
|
||||||
|
if(prefix === 'video' || prefix==='flv') {
|
||||||
|
this.vedioPreviewVisible = true
|
||||||
|
this.nonsupportPreviewVisible = false
|
||||||
|
} else if(prefix === 'image') {
|
||||||
|
this.photoPreviewVisible = true
|
||||||
|
this.nonsupportPreviewVisible = false
|
||||||
|
} else {
|
||||||
|
this.nonsupportPreviewVisible = true
|
||||||
|
this.vedioPreviewVisible = false
|
||||||
|
this.photoPreviewVisible = false
|
||||||
|
}
|
||||||
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
Loading…
Reference in New Issue