日本不卡不码高清免费观看,久久国产精品久久w女人spa,黄色aa久久,三上悠亚国产精品一区二区三区

您的位置:首頁技術文章
文章詳情頁

vue3+elementui-plus實現一個接口上傳多個文件功能

瀏覽:36日期:2022-06-13 10:07:26

首先,先使用element-plus寫好上傳組件,變量的定義我在這里就省略了都

<el-form-item prop='file' label='附件'> <el-upload drag ref='upload-demo' action='' v-model='taskForm.file' :file-list='fileLists' :before-upload='handleBeforeUpload' :http-request='uploadFile' :on-remove='handleRemove' :on-change='handleFileChange' :limit='3' :on-exceed='handleExceed' :headers='headers' multiple > <el-icon class='el-icon--upload'><upload-filled /></el-icon> <div class='el-upload__text'> 將文件拖拽到此處,或<em>點擊上傳</em> </div> <template #tip> <div class='el-upload__tip'> 最多上傳3個附件 </div> </template> </el-upload> </el-form-item>

然后,綁定的函數都補充一下

function handleBeforeUpload (file) {//獲取上傳文件大小let fileSize = Number(file.size / 1024 / 1024);if (fileSize > 100) { ElMessage({ message: '文件大小不能超過100MB,請重新上傳。', type: 'warning'}) return false} } function uploadFile (params) {if (params.file == null) { ElMessage({ message: '請選擇需要上傳的文件', type: 'warning'}) return false} } function handleFileChange (file, fileList) {fileLists.value = fileList } function handleRemove (file, fileList) {fileLists.value = fileList } function handleExceed(files, fileList) {ElMessage({ message: '最多上傳3個文件,請刪除后重新上傳!', type: 'warning'}) }

然后,假設有個提交按鈕,點擊上傳文件請求接口

/** 提交按鈕 */ function submitForm() {proxy.$refs['taskForms'].validate(valid => { // 表單其他必填字段校驗一下 if (valid) { // 加個loadingloading.value = ElLoading.service({ lock: true, text: 'Loading'})// 判斷是否上傳了文件 沒有就不用調用上傳if (fileLists.value.length > 0) { console.log('list', fileLists.value) let fileData = new FormData() var isAdd = false // 區別是否上傳了新文件 var ids = [] // 編輯時存儲已經回顯的文件ids // 這里因為編輯和新增邏輯都有,所以在編輯時需要區分, // 到底是上傳了新文件,還是說依舊是原來的文件,再提交一下表單,提交其他字段而已 // 而判斷是否是最新上傳的文件就依據是否有文件流raw for(var i =0 ; i< fileLists.value.length; i++) {// 通過是否有文件流raw判斷是否上傳新文件,是則appendif (fileLists.value[i].raw) { isAdd = true fileData.append('file', fileLists.value[i].raw)} else { // 拿到回顯文件(即非新上傳文件)的id ids.push(fileLists.value[i].id)} } console.log('ids=', ids) fileData.append('type', 1) // type代表上傳操作是哪個模塊的:1任務 2總結 // 若isAdd=true,則說明添加了新文件,調用上傳 if (isAdd) {uploadFileData(fileData).then((res) => { console.log('upload', res) if (res.code == 200) {// 回顯文件id數組和新上傳文件得到的id數組合并taskForm.value.file = ids.concat(res.result.ids)console.log('file-ids',taskForm.value.file)addAndEdit() // 調用保存其他字段信息的接口 }}) } else {taskForm.value.file = idsaddAndEdit() // 調用保存其他字段信息的接口 }} else { taskForm.value.file = '' addAndEdit() // 調用保存其他字段信息的接口} }}) }

既然有編輯,那就應該做回顯的邏輯,文件如何回顯到上傳組件上

// 點擊編輯 function editTasks (row) {let fileData = new FormData()fileData.append('fileId', row.file)// 獲取文件名getFileData(fileData).then((res) => { console.log('test', res) if (res.code == 200) {// 就是這里,拿到文件名,然后文件回顯,我這里是通過接口拿到文件名,// 如果你能更直接的拿到文件名,直接執行這個foreach即可res.result.forEach((item) => {// 回顯重點,就是把你需要的東西push到fileList中 fileLists.value.push({ name: item.fileName, id: item.id })})console.log('edoite', taskForm.value, fileLists.value) }})taskId.value = row.idtaskForm.value = {...row}taskTitle.value = '編輯任務'showTask.value = truetaskForm.value.file = row.file !== 'null' ? JSON.parse(row.file) : [] }

over 以上主要通過代碼說明,可根據自己實際情況改造

到此這篇關于vue3+elementui-plus實現一個接口上傳多個文件的文章就介紹到這了,更多相關vue3 elementui-plus上傳多個文件內容請搜索好吧啦網以前的文章或繼續瀏覽下面的相關文章希望大家以后多多支持好吧啦網!

標簽: JavaScript
日本不卡不码高清免费观看,久久国产精品久久w女人spa,黄色aa久久,三上悠亚国产精品一区二区三区
国产亚洲精品自拍| 99riav国产精品| 啪啪亚洲精品| 免费在线亚洲欧美| 免费一区二区三区在线视频| 国产日韩欧美一区二区三区| 国产精品成人一区二区网站软件| 欧美国产中文高清| 日韩国产一区二区三区| 婷婷亚洲综合| 91嫩草精品| 91视频精品| 999久久久91| 日韩一区精品视频| 欧美激情aⅴ一区二区三区 | 欧美特黄视频| 亚洲三区欧美一区国产二区| 国产日产精品_国产精品毛片 | 日韩一区二区三区在线看| 国产日韩在线观看视频| 肉色欧美久久久久久久免费看| 欧美精品自拍| 久久影视三级福利片| 午夜在线精品| 极品av在线| 日本精品另类| 欧洲激情综合| 精品国产不卡| 亚洲精品一级| 亚洲福利精品| 日韩欧美一区二区三区免费看| 在线看片一区| 亚洲四虎影院| 久久久精品区| 国产精品视频一区二区三区四蜜臂| 国产一区亚洲| 天堂√中文最新版在线| 美女国产一区二区三区| 亚洲精品成a人ⅴ香蕉片| 999久久久91| 欧美香蕉视频| 精品亚洲自拍| 国产精品乱战久久久| 蜜臀久久99精品久久久画质超高清| 91综合网人人| 国内自拍视频一区二区三区| 91精品丝袜国产高跟在线| 久久麻豆精品| 性欧美videohd高精| 精品国产不卡一区二区| 久久久免费人体| 国产精品www994| 国产毛片精品久久| 91成人精品观看| 青青草国产成人99久久| 91精品在线免费视频| 欧美天堂在线| 麻豆一区在线| 日韩av二区| 欧美精品资源| 美女国产精品| 日本va欧美va精品| 日韩精品免费观看视频| 日韩 欧美一区二区三区| 日日夜夜免费精品视频| 久久国产三级| 精品三级av| 久久高清免费| 老司机精品久久| 日韩极品在线观看| 国产精品一区二区三区av | 亚洲开心激情| 国产精品亚洲综合久久| 麻豆中文一区二区| 亚洲视频综合| 日韩精品久久理论片| 日韩av一级片| 97精品97| 免费不卡在线观看| 久久精品九色| 免费久久精品| 91大神在线观看线路一区| 麻豆视频在线看| 久久成人一区| 国产乱码午夜在线视频| 男女精品网站| 福利视频一区| 婷婷亚洲成人| 久久精品高清| 麻豆精品视频在线观看| 日韩一级欧洲| 国产精品大片| 巨乳诱惑日韩免费av| 成人一区不卡| 日韩成人午夜精品| 99久精品视频在线观看视频| 日产欧产美韩系列久久99| 中文字幕在线看片| 青青草91视频| 三级欧美在线一区| 人人香蕉久久| 久久男人av资源站| 国产精品主播| 亚洲丝袜美腿一区| 欧美日韩国产高清电影| 久久久久久自在自线| 亚洲涩涩av| 亚州av乱码久久精品蜜桃| 国产精品二区不卡| 久久成人高清| 人人爱人人干婷婷丁香亚洲| 综合亚洲自拍| 久久亚洲色图| 99视频精品| 国产在线成人| 欧美69视频| 亚洲一级黄色| 激情综合网址| 亚洲欧美伊人| 欧美日韩一二三四| 免费不卡中文字幕在线| 国产精品久久久久蜜臀| 精品日韩一区| 精品精品99| 成人自拍av| 日本午夜精品| 日韩在线麻豆| 国产精品外国| 精品一区三区| 亚洲精品一区三区三区在线观看| 国产中文欧美日韩在线| 欧美啪啪一区| 国产精品玖玖玖在线资源| 日韩欧美中文字幕在线视频| 国产乱人伦丫前精品视频| 国产成人黄色| 不卡视频在线| 日本在线一区二区三区| 精品精品99| 午夜视频一区二区在线观看| 福利在线免费视频| 日韩专区欧美专区| 神马午夜在线视频| 日产欧产美韩系列久久99| 免费高潮视频95在线观看网站| 中文字幕日本一区二区| 天堂√中文最新版在线| 久久精品99久久久| 99在线观看免费视频精品观看| 欧美a级一区二区| 在线看片日韩| 中文字幕高清在线播放| 日韩高清一区在线 | 日本亚洲欧美天堂免费| 深夜视频一区二区| 欧美激情一区| 日韩av中文字幕一区| 毛片不卡一区二区| 国产99亚洲| 亚洲丝袜美腿一区| 日韩中文一区二区| 久久久久久婷| 午夜久久av| 日本免费久久| 天堂精品久久久久| 精品一区二区三区视频在线播放| 午夜日韩在线| 精品国产中文字幕第一页| 99视频在线精品国自产拍免费观看| 欧美精品第一区| 日韩中文欧美在线| 久久久亚洲一区| 国产精品22p| 亚洲日本三级| 欧美不卡视频| 人在线成免费视频| 国产精品色婷婷在线观看| 视频在线观看一区二区三区| 亚洲日本网址| 国产情侣一区在线| 国产精品99免费看| 久草免费在线视频| 久久97视频| 国产精品二区影院| 亚洲精品一级| 午夜宅男久久久| 红桃视频国产精品| 欧美亚洲国产精品久久| 91视频一区| 婷婷激情一区| 日韩一区自拍| 91精品国产成人观看| 日本午夜大片a在线观看| 国产麻豆一区二区三区精品视频| 视频一区中文字幕国产| 亚洲免费精品| 综合精品一区| 日本麻豆一区二区三区视频| 青青草伊人久久| 麻豆一区二区三区|