vue上传excel并展示_(一)vue导入上传excel功能

本文介绍了如何在Vue项目中实现Excel文件的上传功能,包括限制上传文件的格式、大小,以及在上传前的文件名验证。当文件上传成功时,会显示数据导入成功的提示;反之,如果发生错误,将提示数据导入失败。同时,对于文件格式不正确和文件大小超过限制的情况,会有相应的警告提示。
摘要由CSDN通过智能技术生成

1、excel上传功能

ref="upload"

:show-upload-list="false"

:default-file-list="defaultList"

:on-success="handleSuccess"

:on-error="handleError"

:format ="['xlsx','xls']"

:max-size="fileSize"

:on-format-error="handleFormatError"

:on-exceeded-size="handleMaxSize"

:before-upload="handleBeforeUpload"

action="//jsonplaceholder.typicode.com/posts/"

style="display: inline-block;width:58px;">

购买明细表

/*文件上传操作*/

import util from '@/libs/util.js';

export default {

name: 'insurance-data-import',

data () {

return {

fileName:'',

fileTemArr:['购买明细表','索赔记录表'],

fileSize:10,

defaultList:[],

};

},

mounted:function(){

},

methods: {

handleSuccess(res,file){

if(res.errcode === 0){

this.$Message.success("数据导入成功!")

this.$refs.upload.clearFiles()

}

},

handleError(error,file){

this.$Message.error("数据导入失败!")

},

handleFormatError (file) {

this.$Notice.warning({

title: '文件格式不正确',

desc: '文件 ' + file.name + ' 格式不正确,请上传.xls,.xlsx文件。'

});

},

handleMaxSize (file) {

this.$Notice.warning({

title: '文件大小错误',

desc: 'File ' + file.name + ' 文件大小不得超过'+this.fileSize+'M'

});

},

pro (file) {

return new Promise((resolve, reject) => {

setTimeout(() => {

this.$Notice.warning({

title: '文件名称错误',

desc: 'File ' + file.name

});

reject(new Error('err'))

}, 100)

})

},

//阻止上传//上传前判断用户选择的模板与实际上传的模板是否相同(文件名判断)

handleBeforeUpload (file) {

let name = '';

if(file.name){

// name = file.name.replace(/\s/g,"").split('.')[0]

name = file.name.split('.')[0]

alert(name)

if(name !== this.fileName){

return this.pro(file)

}

}

}

}

};

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值