欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

Element-UI 多個el-upload組件自定義上傳不用上傳url并且攜帶自定義傳參(文件序號)

 更新時間:2024年06月14日 10:50:47   作者:Cutecumber  
有多個upload組件,每個都需要單獨上傳獲取文件(JS File類型),不需要action上傳到指定url,自定義上傳動作和http操作,下面通過本文給大家分享Element-UI 多個el-upload組件自定義上傳不用上傳url并且攜帶自定義傳參(文件序號),感興趣的朋友一起看看吧

1. 需求: 有多個(不確定具體數(shù)量)的upload組件,每個都需要單獨上傳獲取文件(JS File類型),不需要action上傳到指定url,自定義上傳動作和http操作。而且因為不確定組件數(shù)量,所以每次也需要獲取是第幾個文件(索引),所以也需要實現(xiàn)附加索引這個參數(shù)

2. 實現(xiàn):如下

<el-col v-bind="grid2" v-for="(item, index) in list" :key="index"> # list 不知道一共有幾個列表項
    <el-form-item required :label="item.value" prop="randomAmount">
        <el-upload
            class="upload-demo"
            action="none" #這里隨便寫
            :http-request="handleFileUpload" #這里會覆蓋原本的上傳http的操作,從而實現(xiàn)自定義。
            :limit="1"
            :on-remove="(file, fileList)=> {return onRemove(file, fileList, index)}" #這里的index是自定義索引參數(shù),這種寫法能夠攜帶自己的參數(shù)
            :on-change="(file, fileList)=> {return onChange(file, fileList, index)}">  
            <el-button round>點擊上傳</el-button>
        </el-upload>
    </el-form-item>
</el-col>
<el-col :span="24">
    <el-button type="primary" @click="submitForm">確認提交</el-button>
</el-col>
<script>
export default {
	data() {
		return {
            // 暫存?zhèn)€el-upload的File
            fileUploaded: {
                1: null,
                2: null,
                3: null,
                4: null,
                5: null // 可以多寫幾個(確定最多不會上傳超過某數(shù)量的文件)
            },
			list:[ // 根據(jù)這個列表,渲染相應數(shù)量的el-upload組件
				{ key: "1", value: "個體工商戶/企業(yè)營業(yè)執(zhí)照照片" },
				{ key: "2", value: "政府機關/事業(yè)單位/社會組織登記證書照片" },
				// list 不知道一共有幾個列表項,這部分是通過后端請求獲取的
			]
		}
	},
	methods: {
        // 覆蓋默認的http行為
        handleFileUpload(options, index){
        },
        // 文件操作刪除
        onRemove(file, fileList, index){
            this.fileUploaded[index] = null
        },
        // 文件上傳
        onChange(file, fileList, index) {
            // 判斷上傳的文件是否是滿足格式要求(自定義)
            if(!file.name.includes('.zip')) {
                fileList.pop() # 清除上傳文件后展示出來的文件圖標
                return this.$message.error("請上傳zip壓縮包!")
            }
            // 判斷上傳的文件是否超過大小限制(自定義)
            if (file.size >= 5*1024*1024){ // 5mb
                fileList.pop()
                return this.$message.error("大小不能超過5MB!")
            }
            // 判斷上傳的文件的狀態(tài)(一般不會出錯)
            if(file.status != 'ready'){
                fileList.pop()
                return this.$message.error("狀態(tài)錯誤")
            }
            // 暫存文件
            this.fileUploaded[index] = file.raw
        },
        // 表單上傳,先判斷文件是否按要求上傳了,滿足要求的話,構造formData
        submitForm(){
            let formdata = new FormData()
            for (let i = 0; i < this.list.length; i++) {
            	// 如果有文件未上傳,則報錯。確保每個el-upload都上傳了文件
                if (!this.fileUploaded[i]){
                    return this.$message.error('請上傳'+this.list[i].value)
                }
                formdata.append('subMerCertFiles', this.fileUploaded[i]) // 多個文件上傳
            }
            // 后面調用接口,上傳formdata
       	}
    }
}
</script>

演示

在這里插入圖片描述

在這里插入圖片描述

到此這篇關于Element-UI 多個el-upload組件自定義上傳,不用上傳url,并且攜帶自定義傳參(文件序號)的文章就介紹到這了,更多相關Element-UI 多個el-upload組件自定義上傳內容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關文章希望大家以后多多支持腳本之家!

相關文章

  • 利用Vue.js實現(xiàn)求職在線之職位查詢功能

    利用Vue.js實現(xiàn)求職在線之職位查詢功能

    Vue.js是當下很火的一個JavaScript MVVM庫,它是以數(shù)據(jù)驅動和組件化的思想構建的。下面這篇文章主要給大家介紹了關于利用Vue.js實現(xiàn)求職在線之職位查詢功能的相關資料,需要的朋友可以參考借鑒,下面來一起看看吧。
    2017-07-07
  • Vue MVVM模型與data及methods屬性超詳細講解

    Vue MVVM模型與data及methods屬性超詳細講解

    MVVM旨在利用WPF中的數(shù)據(jù)綁定函數(shù),通過從視圖層中幾乎刪除所有GUI代碼(代碼隱藏),更好地促進視圖層開發(fā)與模式其余部分的分離,這篇文章主要介紹了Vue MVVM模型與data及methods屬性
    2022-10-10
  • 關于頁面刷新vuex數(shù)據(jù)消失問題解決方案

    關于頁面刷新vuex數(shù)據(jù)消失問題解決方案

    本篇文章主要介紹了關于頁面刷新vuex數(shù)據(jù)消失問題解決方案 ,小編覺得挺不錯的,現(xiàn)在分享給大家,也給大家做個參考。一起跟隨小編過來看看吧
    2017-07-07
  • vue2中使用quill編輯器+表格功能(步驟詳解)

    vue2中使用quill編輯器+表格功能(步驟詳解)

    這篇文章主要介紹了vue2中使用quill編輯器+表格功能,本文分步驟結合實例代碼給大家介紹的非常詳細,對大家的學習或工作具有一定的參考借鑒價值,需要的朋友可以參考下
    2023-09-09
  • vue使用laydate時間插件的方法

    vue使用laydate時間插件的方法

    這篇文章主要為大家詳細介紹了vue使用laydate時間插件的方法,具有一定的參考價值,感興趣的小伙伴們可以參考一下
    2018-11-11
  • 如何在vue 中引入使用jquery

    如何在vue 中引入使用jquery

    這篇文章主要介紹了如何在vue 中引入使用jquery,幫助大家更好的理解和使用vue框架,感興趣的朋友可以了解下
    2020-11-11
  • Vue.js使用$.ajax和vue-resource實現(xiàn)OAuth的注冊、登錄、注銷和API調用

    Vue.js使用$.ajax和vue-resource實現(xiàn)OAuth的注冊、登錄、注銷和API調用

    這篇文章主要介紹了 Vue.js使用$.ajax和vue-resource實現(xiàn)OAuth的注冊、登錄、注銷和API調用,具有一定的參考價值,感興趣的小伙伴們可以參考一下
    2017-05-05
  • vue 標簽屬性數(shù)據(jù)綁定和拼接的實現(xiàn)方法

    vue 標簽屬性數(shù)據(jù)綁定和拼接的實現(xiàn)方法

    這篇文章主要介紹了vue 標簽屬性數(shù)據(jù)綁定和拼接的實現(xiàn)方法,小編覺得挺不錯的,現(xiàn)在分享給大家,也給大家做個參考。一起跟隨小編過來看看吧
    2018-05-05
  • vue返回上一頁(后退)的幾種方法與區(qū)別說明

    vue返回上一頁(后退)的幾種方法與區(qū)別說明

    這篇文章主要介紹了vue返回上一頁(后退)的幾種方法與區(qū)別說明,具有很好的參考價值,希望對大家有所幫助,如有錯誤或未考慮完全的地方,望不吝賜教
    2023-10-10
  • Vue Element前端應用開發(fā)之表格列表展示

    Vue Element前端應用開發(fā)之表格列表展示

    在我們一般開發(fā)的系統(tǒng)界面里面,列表頁面是一個非常重要的綜合展示界面,包括有條件查詢、列表展示和分頁處理,以及對每項列表內容可能進行的轉義處理,本篇隨筆介紹基于Vue +Element基礎上實現(xiàn)表格列表頁面的查詢,列表展示和字段轉義處理。
    2021-05-05

最新評論