irc_web/.svn/pristine/1b/1b4f3eb19a06d854c8b6003aaa8...

79 lines
2.0 KiB
Plaintext

<template>
<div class="preview-wrapper">
<iframe
v-if="fileType.indexOf('jpg') !== -1 || fileType.indexOf('png') !== -1"
frameborder="0"
:src="filePath"
width="100%"
height="100%"
/>
<!-- <embed v-else-if="fileType.indexOf('pdf') !== -1" :src="filePath+'#toolbar=0'" style="width: 100%; height: 100%"> -->
<!-- <iframe v-else-if="fileType.indexOf('pdf') !== -1" :src="filePath+'#toolbar=0'" width="100%" height="100%" frameborder="0" /> -->
<iframe v-else-if="fileType.indexOf('pdf') !== -1" :src="`/static/pdfjs/web/viewer.html?file=${OSSclientConfig.basePath}${filePath}?userName=${currentUser}`" width="100%" height="100%" frameborder="0" />
<!-- <pdf-->
<!-- v-else-if="fileType.indexOf('pdf') !== -1"-->
<!-- :src="`/static/pdfjs/web/viewer.html?file=${filePath}`">-->
<!-- </pdf>-->
<div v-else>
{{ $t('common:message:downloadFile') }}
<el-link type="primary" @click="downLoadFile">{{ $t('common:button:download') }}</el-link>
</div>
</div>
</template>
<script>
import { mapGetters } from 'vuex'
export default {
name: 'PreviewFile',
computed: {
...mapGetters(['name'])
},
props: {
filePath: {
type: String,
required: true
},
fileType: {
type: String,
required: true
}
},
data() {
return {
currentUser: zzSessionStorage.getItem('userName')
}
},
mounted() {
// document.querySelector('iframe').attachEvent('onload', () => {
// document.querySelector('iframe').contentDocument.oncontextmenu = function() {
// console.log('本站禁止此操作')
// return false
// }
// })
},
methods: {
// 下载文件
downLoadFile() {
if (!this.filePath) return
window.open(this.filePath, '_blank')
}
}
}
</script>
<style lang="scss">
.preview-wrapper{
height: 100%;
width:100%;
padding: 10px;
::-webkit-scrollbar {
width: 7px;
height: 7px;
}
::-webkit-scrollbar-thumb {
border-radius: 10px;
background: #d0d0d0;
}
}
</style>