国产 无码 综合区,色欲AV无码国产永久播放,无码天堂亚洲国产AV,国产日韩欧美女同一区二区

Ant Design upload 文件上傳 限制文件只能上傳一個

這篇具有很好參考價值的文章主要介紹了Ant Design upload 文件上傳 限制文件只能上傳一個。希望對大家有所幫助。如果存在錯誤或未考慮完全的地方,請大家不吝賜教,您也可以點擊"舉報違法"按鈕提交疑問。

上傳前:Ant Design upload 文件上傳 限制文件只能上傳一個,vue.js,前端,javascript? ? ? ? ? ? ? ?

回顯:可以刪除?Ant Design upload 文件上傳 限制文件只能上傳一個,vue.js,前端,javascript

?最近做了一個后臺管理系統(tǒng)使用的是 Ant Design和vue框架搭建的

文件上傳:組件:? Ant Design? ?https://1x.antdv.com/components/upload-cn/? (upload 官方文檔)

功能需求1.可以拖拽,或者點擊上傳文件? 2.只能上傳單個文件,不能上傳多個文件。3.導入文件只能是 xls、xlsx格式 4.文件大小不能超過10M? ? 5.點擊取消,如果當前有文件正在上傳,提示? ? ? ? ? ? ? ? ? ? ?用戶,沒有的話,關閉彈窗

具體思路:1.點擊文件上傳之前判斷文件的格式/大小符合條件展示,不符合條件提示用戶。2.點擊確定時,判斷文件是否存在,后端需要接受的參數是 formData數據,對文件進行處理。調用接? ? ? ? ? ? ? ? ? ? ?口,成功后,更新數據,不成功,提示用戶。3.點擊取消,如果當前有文件正在上傳,提示用戶,沒有的話,關閉彈窗

注意事項:1.因為antd upload 上傳多個文件自帶remove 回調函數,但是如果fileList 只有一個文件時,需要自己調用remove 回調函數,否則,上傳文件后的刪除按鈕失效。

? ? ? ? ? ? ? ? ? 2.因為我的需求是只能上傳一個文件,所以在上傳文件之前,不僅要判斷格式,還要限制fileList中只能有一個數據,那么也就是后傳的文件,要覆蓋先傳的文件。

? ? ? ? ? ? ? ? ? 3.因為是我自己封裝的組件,需要注意父子組件傳遞數據的問題~~~~~

接下來上代碼。

HTML部分

<template>

? <div class="dialog">

? ? <a-modal :visible="visible1" :confirmLoading="loading1" width="20%" :title="title1 === 'batch' ? '推廣' : ''" centered

? ? ? @cancel="() => { $emit('cancelBatch',fileList) }" @ok="() => { $emit('okBatch', fileList) }">

? ? ? <div>

? ? ? ? <span style="margin-right: 20px; margin-bottom: 10px;display: inline-block;">導入模板</span>

? ? ? ? <a :href='template' @click="downLoad">下載</a>

? ? ? </div>

? ? ? <a-upload-dragger name="file" :before-upload="handleBeforeUpload" :file-list="fileList" ?:remove="handleTableRemove">

? ? ? ? <p class="ant-upload-drag-icon">

? ? ? ? ? <a-icon type="inbox" />

? ? ? ? </p>

? ? ? ? <p class="ant-upload-text">

? ? ? ? ? 點擊或將文件拖拽到這里上傳

? ? ? ? </p>

? ? ? ? <p class="ant-upload-hint">

? ? ? ? ? 支持擴展名:.xlsx .xls

? ? ? ? </p> ? ?

? ? ? </a-upload-dragger>

? ? </a-modal>

? </div>

</template>

Script部分

?
?
?//刪除icon??

? ? handleTableRemove: function (file) {

? ? ? const index = this.fileList.indexOf(file);

? ? ? const newFileList = this.fileList

? ? ? newFileList.splice(index, 1);

? ? ? this.fileList = newFileList;

? ? },

? ? handleBeforeUpload: function (file, fileList) {

? ? ? this.file = file

? ? ? console.log(file, fileList);

? ? ? //判斷文件大小

? ? ? const isLt10M = file.size / 1024 / 1024 < 10

? ? ? if (!isLt10M) {

? ? ? ? this.$message.error(file.name + '文件大小超出限制,請修改后重新上傳')

? ? ? ? return false

? ? ? }

? ? ? //判斷上傳文件格式

? ? ? let extension = file.name.split('.')[1] === 'xls';

? ? ? let extension2 = file.name.split('.')[1] === 'xlsx';

? ? ? if (!extension && !extension2) {

? ? ? ? this.$message.warning('導入文件只能是 xls、xlsx格式!');

? ? ? ? return false

? ? ? }

? ? ? this.fileList = [...this.fileList, file];

? ? ? //限制文件只能上傳一個

? ? ? this.fileList = this.fileList.slice(-1);

? ? ? return false

? ? },

?

?

點擊確認

okBatch(fileList) {

? ? ? if (fileList.length > 0) {

? ? ? ? // file 是上傳的文件

? ? ? ? // 后端需要接受的參數是 formData數據,

? ? ? ? const form = new FormData()

? ? ? ? form.append('file', fileList[0])

? ? ? ?//點擊確定后先讓確定按鈕loading

? ? ? ? this.confirmLoading1 = true

? ? ? ? importTask(form).then((res) => {

? ? ? ? ? if (res.code === 2000) {

? ? ? ? ? ?//上傳成功后取消loading

? ? ? ? ? ? this.confirmLoading1 = false

? ? ? ? ? ? this.visible1 = false

? ? ? ? ? ? this.$message.info(res.message)

? ? ? ? ? ? //重置列表數據

? ? ? ? ? ? this.handleReset()

? ? ? ? ? } else if (res.code === 5000) {

? ? ? ? ? ? this.$message.error(res.message)

? ? ? ? ? ? this.confirmLoading1 = false

? ? ? ? ? } else {

? ? ? ? ? ? this.$message.error(res.message)

? ? ? ? ? ? this.confirmLoading1 = false

? ? ? ? ? }

? ? ? ? })

? ? ? } else {

? ? ? ? this.$message.error('您還沒有上傳文件!')

? ? ? }

? ? },

點擊取消

?cancelBatch() {

? ? ? ? if (!this.confirmLoading1) {

? ? ? ? ? this.visible1 = false

? ? ? ? } else {

? ? ? ? ? this.$message.error('您正在上傳文件!')

? ? ? ? }

? ? },

具體就是這樣完成的。

寫的比較菜,有問題歡迎在評論區(qū)提出討論,謝謝!文章來源地址http://www.zghlxwxcb.cn/news/detail-628986.html

到了這里,關于Ant Design upload 文件上傳 限制文件只能上傳一個的文章就介紹完了。如果您還想了解更多內容,請在右上角搜索TOY模板網以前的文章或繼續(xù)瀏覽下面的相關文章,希望大家以后多多支持TOY模板網!

本文來自互聯(lián)網用戶投稿,該文觀點僅代表作者本人,不代表本站立場。本站僅提供信息存儲空間服務,不擁有所有權,不承擔相關法律責任。如若轉載,請注明出處: 如若內容造成侵權/違法違規(guī)/事實不符,請點擊違法舉報進行投訴反饋,一經查實,立即刪除!

領支付寶紅包贊助服務器費用

相關文章

  • Vue+elementUI中的el-upload實現上傳文件給后端,限制上傳文件的格式、文件的大小、文件的數量,將表單和Excel文件一起提交給后端

    Vue+elementUI中的el-upload實現上傳文件給后端,限制上傳文件的格式、文件的大小、文件的數量,將表單和Excel文件一起提交給后端

    需求:1.表單輸入信息 2.上傳Excel附件 3.下載附件模板 4.限制上傳文件的格式、文件的大小、文件的數量 5.將表單和Excel文件一起提交給后端 效果圖: 樣式部分 data部分代碼 method中的代碼

    2024年02月12日
    瀏覽(32)
  • el-upload上傳文件類型大小限制+手動上傳+通過后端給的接口帶參數

    el-upload上傳文件類型大小限制+手動上傳+通過后端給的接口帶參數

    ? 本地上傳文件類型只能是 xml 和 a2l 的 做多上傳個數為2個 可以多選上傳 每種格式最多上傳一個文件 上傳為手動上傳到服務器 上傳錯誤有相應的提示 ? 首先上傳為手動上傳那么文件類型我是打算在選取文件到前端頁面的過程中我就處理文件 或者也? ? 可以在上傳服務器的

    2024年02月08日
    瀏覽(101)
  • 如何vue使用ant design Vue中的select組件實現下拉分頁加載數據,并解決存在的一個問題。

    如何vue使用ant design Vue中的select組件實現下拉分頁加載數據,并解決存在的一個問題。

    ? ? 需求:拉下菜單中數據過多,200條以上,就會導致select組件卡死。所以需要使用滑動到底部使其分頁加載 ? ? 可以借助 onPopupScroll 事件來監(jiān)聽下拉菜單的滾動事件,并判斷當前是否已經到達了下拉菜單底部。具體可以通過以下步驟實現: ? ? 1、在組件中綁定?@popupScro

    2023年04月20日
    瀏覽(38)
  • Vue Element upload組件和Iview upload 組件上傳文件

    Vue Element upload組件和Iview upload 組件上傳文件

    今天要分享的是使用這倆個UI組件庫的upload組件分別實現調用組件本身的上傳方法實現和后臺交互。接下來就是開車的時間,請坐穩(wěn)扶好~ 一、element upload組件傳送門 ?1、html文件 注意事項: 使用組件本身的上傳事件,必須加auto-upload屬性設置為false; ????????????????

    2024年02月11日
    瀏覽(27)
  • vue 使用 el-upload 上傳文件(自動上傳/手動上傳)

    vue 使用 el-upload 上傳文件(自動上傳/手動上傳) 上傳 上傳

    2024年02月13日
    瀏覽(114)
  • vue3+ant design vue+ts實戰(zhàn)【ant-design-vue組件庫引入】

    vue3+ant design vue+ts實戰(zhàn)【ant-design-vue組件庫引入】

    ????更多內容見Ant Design Vue官方文檔 ??點擊復習vue3【watch檢測/監(jiān)聽】相關內容 ??????一個好項目的編寫不僅需要完美的邏輯,以及相應的技術,同時也需要一個 設計規(guī)范的高質量UI組件庫 。??????本期文章將會詳細講解 Ant Design of Vue 組件庫的 安裝、使用、引入 。

    2024年02月02日
    瀏覽(49)
  • vue使用elementUI的upload上傳文件封裝

    將文件上傳的方法封裝一下,供大家統(tǒng)一調用, 話不多說,直接上代碼 action 上傳的地址 accept 接受上傳的文件類型 multiple 是否開啟多文件上傳模式 limit 限制上傳個數 fileList 文件列表 disabled 是否禁用 before-upload 上傳文件之前的鉤子. on-success 上傳成功的鉤子函數 on-error 文件上

    2024年02月09日
    瀏覽(22)
  • 【學習記錄21】Vue+ElementUI el-upload多文件上傳,一次請求上傳多個文件!

    【學習記錄21】Vue+ElementUI el-upload多文件上傳,一次請求上傳多個文件!

    前情回顧說點廢話。。。 1、項目當中遇到需要上傳多個圖片,一次選取多個圖片。但是吧el-upload默認只能一個一個傳,每次上傳成功還的自己去push,一個一個去判斷。 2、關鍵是后臺給的接口,要一次性接收一堆,無奈之下只能去網上搜索,大佬們都是給的代碼片段無法直

    2024年02月12日
    瀏覽(95)
  • Vue Element ui Upload組件在上傳文件時,動態(tài)切換 action上傳路徑

    Vue Element ui Upload組件在上傳文件時,動態(tài)切換 action上傳路徑

    當我們在使用 Element ui,Upload組件時,官網默認的基礎配置如下 現在的需求是,如果頁面只有 一個 el-upload組件,需要上傳的文件,根據不同的類型,切換不同的action 上傳路徑。 首先我這里選擇,通過調用 before-upload 上傳文件之前的鉤子函數,函數接收一個參數,就是上傳的

    2024年02月11日
    瀏覽(28)
  • ant design vue 的getPopupContainer

    ant design vue 的getPopupContainer

    在 ant design vue 中,有幾個組件是有 getPopupContainer 屬性的,比如:下拉菜單 默認是渲染到body 上的,所以如果你想要對 下拉選擇組件 的樣式,做修改,如果 style 標簽上開啟了 scoped,肯定不會生效 所以,需要指定 getPopupContainer ,用法如下

    2024年02月08日
    瀏覽(17)

覺得文章有用就打賞一下文章作者

支付寶掃一掃打賞

博客贊助

微信掃一掃打賞

請作者喝杯咖啡吧~博客贊助

支付寶掃一掃領取紅包,優(yōu)惠每天領

二維碼1

領取紅包

二維碼2

領紅包