<FormItem label="模板执行文件" prop="jar">
<Upload
ref="upload"
:action="uploadAction"
type="select"
:show-upload-list="true"
:format="['jar']"
:default-file-list="defaultFileList"
:max-size="102400"
:before-upload="handleBeforeUpload"
:on-format-error="handleFormatError"
:on-exceeded-size="handleMaxSizeError"
:on-success="handleUploadSuccess"
name="jar"
>
<Button type="primary">选择文件</Button>
</Upload>
</FormItem>
defaultFileList: [],
/**
* @desc 上传文件大小超过限制 最大100M
*/
handleMaxSizeError(file, fileList) {
this.$Message.error('文件大小超过限制,请重新选择文件!');
return false;
},
/**
* @desc 上传文件非jar文件
*/
handleFormatError(file, fileList) {
this.$Message.error('非jar格式的文件,请重新选择!');
return false;
},
/***
* @desc 手动上传设置
*/
handleBeforeUpload(file) {
let fileName = file.name;
var suffix = fileName.substr(fileName.lastIndexOf('.'));
if (suffix != '.jar') {
this.$Message.error('非jar格式的文件,请重新选择!');
return false;
}
this.defaultFileList.length = 0;
this.uploadFile = file;
this.addRuleTemplateForm['jar'] = file;
let reader = new FileReader();
reader.readAsDataURL(file);
let self = this;
reader.onloadend = function(e) {
file.url = reader.result;
let fileObj = {
name: file.name,
url: file.url
};
self.defaultFileList.push(fileObj);
self.$refs.addRuleTemplateFormRef.validateField('jar');
};
return false;
},
/**
* @desc 文件上传成功
*/
handleUploadSuccess(response, file, fileList) {
console.log(response, file, fileList);
},