【ID1000403】模式管理-添加模式,文件类型限制

master
382696293@qq.com 2 years ago
parent 479942bb46
commit 9d51242a95

@ -216,8 +216,9 @@
list-type="picture-card" list-type="picture-card"
:on-preview="handlePreviewFile" :on-preview="handlePreviewFile"
:on-success="handleBannerFileSuccess" :on-success="handleBannerFileSuccess"
:before-upload="beforeBannerUpload" :before-upload="limitImageFileType"
:on-remove="handleRemoveBanner"> :on-remove="handleRemoveBanner"
accept=".jpeg,.jpg,.png,.svg">
<i class="el-icon-plus"></i> <i class="el-icon-plus"></i>
<div slot="tip" class="el-upload__tip">只能上传jpg/png图片</div> <div slot="tip" class="el-upload__tip">只能上传jpg/png图片</div>
</el-upload> </el-upload>
@ -229,16 +230,16 @@
<el-upload <el-upload
class="upload-demo" class="upload-demo"
:action="upload.url" :action="upload.url"
:before-upload="limitUploadFileType" :before-upload="limitVideFileType()"
:on-preview="handlePreview" :on-preview="handlePreview"
:on-remove="handleRemove" :on-remove="handleRemove"
:on-success="handleFileSuccess" :on-success="handleFileSuccess"
:headers="upload.headers" :headers="upload.headers"
:file-list="fileList" :file-list="fileList"
accept=".mp4,.avi,.mov,.wmv" accept=".mp4,.avi,.mov,.rmvb,.rm,.flv,.3gp"
> >
<el-button size="small" type="primary">点击上传</el-button> <el-button size="small" type="primary">点击上传</el-button>
<div slot="tip" class="el-upload__tip">只能上传视频文件(mp4avimovwmv格式)且不超过50M</div> <div slot="tip" class="el-upload__tip">只能上传视频文件且不超过50M</div>
</el-upload> </el-upload>
</el-form-item> </el-form-item>
<el-form-item v-if="form.instrumentType == 2" label="弹出视频窗" prop="openSource" label-width="100px"> <el-form-item v-if="form.instrumentType == 2" label="弹出视频窗" prop="openSource" label-width="100px">
@ -725,19 +726,39 @@ export default {
handlePreview(file) { handlePreview(file) {
console.log(file); console.log(file);
}, },
limitUploadFileType(file) { limitImageFileType(file) {
const type = ['video/mp4','video/avi','video/mov','video/rmvb','video/rm','video/flv','video/3gp'] const imageType = ['image/jpeg', 'image/jpg', 'image/png', 'image/svg']
const isVideo = type.includes(file.type) let isVideo = imageType.includes(file.type)
//
if (!isVideo) {
this.$message.error(`图片格式错误!`)
return false
}
//
let fileSize = 5;
if (fileSize) {
let isLt = file.size / 1024 / 1024 < fileSize
if (!isLt) {
this.$message.error(`上传文件大小不能超过 ${fileSize} MB!`)
return false
}
}
return true;
},
limitVideFileType(file) {
const videoType = ['video/mp4','video/avi','video/mov','video/rmvb','video/rm','video/flv','video/3gp']
let isVideo = videoType.includes(file.type)
// //
if (!isVideo) { if (!isVideo) {
this.$message.error(`视频格式错误!`) this.$message.error(`视频格式错误!`)
return false return false
} }
// //
const fileSize = 50; let fileSize = 50;
const isLt = file.size / 1024 / 1024 < fileSize let isLt = file.size / 1024 / 1024 < fileSize
if (!isLt) { if (!isLt) {
this.$message.error(`上传文件大小不能超过 ${this.fileSize} MB!`) this.$message.error(`上传文件大小不能超过 ${fileSize} MB!`)
return false return false
} }
return true return true
@ -767,8 +788,6 @@ export default {
this.dialogImageUrl = file.url; this.dialogImageUrl = file.url;
this.dialogVisible = true; this.dialogVisible = true;
}, },
beforeBannerUpload(){
},
// //
showOpenSource(){ showOpenSource(){
this.openSourceOpen = true; this.openSourceOpen = true;

Loading…
Cancel
Save