中文字幕av专区_日韩电影在线播放_精品国产精品久久一区免费式_av在线免费观看网站

溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

Vue怎么實現Excel上傳功能

發布時間:2022-11-16 09:19:30 來源:億速云 閱讀:208 作者:iii 欄目:開發技術

這篇文章主要講解了“Vue怎么實現Excel上傳功能”,文中的講解內容簡單清晰,易于學習與理解,下面請大家跟著小編的思路慢慢深入,一起來研究和學習“Vue怎么實現Excel上傳功能”吧!

1、HTML部分

<Col span="2">上傳文件:</Col>
<Col span="22" class="uploadExcelBox">
    <Upload ref="uploadExcel" :loading="uploadLoading" :action="uploadFileUrl" accept="xlsx,xls" :format="uploadFormat" :before-upload="beforeImgFile" :on-success="successImgFile" :on-error="errorImgFile" :show-upload-list="true">
         <Button type="success">上傳附件</Button>
	 </Upload>
     <div v-if="uploadingFile !== null">待上傳文件:
          <span class="blueFont">{{ fileName }}</span>
          <Button @click="uploadFun(index)" :loading="loadingStatus" class="manualUploadBtn">{{ loadingStatus ? '上傳中...' : '點擊開始上傳' }}</Button>
      </div>
</Col>

2、JS部分

<script>
    // import excel from '@/libs/excel'
	import service from '@/libs/request' //用來取當前域名
	import reportFormApi from '@/api/reportForm'
    export default {
        data() {
            return {
                uploadLoading:false,//上傳控件loading狀態
				uploadFileUrl: "",
				uploadFormat:['xlsx','xls'],
				uploadingFile:null,//待上傳的文件
                loadingStatus:false,//upload組件的狀態
                fileName:"",//待上傳文件的名稱
            }
        },
        mounted() {
            this.uploadFileUrl = service.apiUrl + "/qingximaster/winInfo/execlAdd";//上傳Excel的接口路徑,后端人員提供。
        },
        methods: {
			// 圖片上傳之前
			beforeImgFile(file) {
				// console.log(file);
				const fileExt = file.name.split('.').pop().toLocaleLowerCase()
				if (fileExt === 'xlsx' || fileExt === 'xls') {
					var formdata = new FormData();
					formdata.append("file",file);
                    this.fileName = formdata.get('file').name;//通過formdata.get('file')方法,可以取file文件里的信息,例如Excel的文件名。
					this.uploadingFile =  formdata;//注意:這個將作為參數傳給接口實現上傳。傳給接口的file不需要 formdata.get('file'),直接傳file。
				} else {
					this.$Notice.warning({
						title: '文件類型錯誤',
						desc: '文件:' + file.name + '不是EXCEL文件,請選擇后綴為.xlsx或者.xls的EXCEL文件。'
					})
				}
				return false
			},
			// 上傳成功
			successImgFile(response, file, fileList) {
                this.$Notice.success({
                    title: '提示',
                    desc: '上傳成功!'
                })
			},
			// 上傳失敗
			errorImgFile(error, file, fileList) {
				this.$Notice.success({
                    title: '提示',
                    desc: '上傳失敗!'
                })
				console.log(error);
			},
			uploadFun(index){//調接口上傳Excel
				this.loadingStatus = true;
				reportFormApi.uploadExcel({
                    url: this.uploadFileUrl,
                    file: this.uploadingFile
                }).then(res =>{
					this.uploadingFile = null;
                    this.fileName = "";
                    if(res.code==0){
                        this.infoList[index].content = JSON.stringify(res.data);
					    // console.log(this.infoList[index].content);
                        this.$Message.success("上傳成功!");
                    }else{
                        this.$Message.error(res.message);
                    }
				}).finally(()=>{
					this.loadingStatus = false;
                    this.uploadLoading = false;
                })
			},
        }
    }

感謝各位的閱讀,以上就是“Vue怎么實現Excel上傳功能”的內容了,經過本文的學習后,相信大家對Vue怎么實現Excel上傳功能這一問題有了更深刻的體會,具體使用情況還需要大家實踐驗證。這里是億速云,小編將為大家推送更多相關知識點的文章,歡迎關注!

向AI問一下細節

免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

AI

长岭县| 安乡县| 甘南县| 尼勒克县| 城市| 凉山| 松原市| 桑植县| 卢氏县| 建湖县| 辽源市| 汨罗市| 从化市| 张家界市| 彩票| 文昌市| 郧西县| 黑山县| 连山| 新兴县| 江阴市| 阿克苏市| 湖南省| 若羌县| 金湖县| 广州市| 黑龙江省| 开平市| 安顺市| 天长市| 梓潼县| 会理县| 汤阴县| 平和县| 清涧县| 调兵山市| 扎兰屯市| 大化| 仁怀市| 忻城县| 六盘水市|