<span id="mktg5"></span>

<i id="mktg5"><meter id="mktg5"></meter></i>

        <label id="mktg5"><meter id="mktg5"></meter></label>
        最新文章專題視頻專題問答1問答10問答100問答1000問答2000關鍵字專題1關鍵字專題50關鍵字專題500關鍵字專題1500TAG最新視頻文章推薦1 推薦3 推薦5 推薦7 推薦9 推薦11 推薦13 推薦15 推薦17 推薦19 推薦21 推薦23 推薦25 推薦27 推薦29 推薦31 推薦33 推薦35 推薦37視頻文章20視頻文章30視頻文章40視頻文章50視頻文章60 視頻文章70視頻文章80視頻文章90視頻文章100視頻文章120視頻文章140 視頻2關鍵字專題關鍵字專題tag2tag3文章專題文章專題2文章索引1文章索引2文章索引3文章索引4文章索引5123456789101112131415文章專題3
        問答文章1 問答文章501 問答文章1001 問答文章1501 問答文章2001 問答文章2501 問答文章3001 問答文章3501 問答文章4001 問答文章4501 問答文章5001 問答文章5501 問答文章6001 問答文章6501 問答文章7001 問答文章7501 問答文章8001 問答文章8501 問答文章9001 問答文章9501
        當前位置: 首頁 - 科技 - 知識百科 - 正文

        vue iView 上傳組件之手動上傳功能

        來源:懂視網 責編:小采 時間:2020-11-27 22:17:33
        文檔

        vue iView 上傳組件之手動上傳功能

        vue iView 上傳組件之手動上傳功能:基于 Vue 的 UI 組件庫現在已經有很多了,尤其是移動端的。現在又多了一個 iView 。 iView 主要服務于 PC 界面的中后臺業務,是一套高質量的開源 UI 組件庫,先上地址: https://github.com/iview/iview 官網是: https://www.iview
        推薦度:
        導讀vue iView 上傳組件之手動上傳功能:基于 Vue 的 UI 組件庫現在已經有很多了,尤其是移動端的。現在又多了一個 iView 。 iView 主要服務于 PC 界面的中后臺業務,是一套高質量的開源 UI 組件庫,先上地址: https://github.com/iview/iview 官網是: https://www.iview

        基于 Vue 的 UI 組件庫現在已經有很多了,尤其是移動端的。現在又多了一個 iView 。

        iView 主要服務于 PC 界面的中后臺業務,是一套高質量的開源 UI 組件庫,先上地址:

        https://github.com/iview/iview

        官網是:

        https://www.iviewui.com/

        特性

      1. 使用單文件的 Vue 組件化開發模式
      2. 基于 npm + webpack + babel 開發,支持 ES2015
      3. 高質量、功能豐富
      4. 友好的 API ,自由靈活地使用空間
      5. 詳細、友好的文檔,事無巨細
      6. 最近做一個后臺系統用的功能 總結下遇見的問題

        功能需求點

      7. 上傳選擇文件 判斷文件格式
      8. 保存需要上傳的文件,展示文件名
      9. 提供刪除文件功能(未上傳前)
      10. 上傳文件
      11. iView 提供的上傳組件

        <Upload
         multiple
         ref="upload"
         :before-upload="handleUpload"
         :show-upload-list="false"
         :on-success="uploadSuccess"
         action="http://jsonplaceholder.typicode.com/posts/">
         <Button type="ghost" icon="ios-cloud-upload-outline">瀏覽</Button>
        </Upload>
        <div v-for="(item, index) in file">Upload file: {{ item.name }} 
         <a href="javascript:;" rel="external nofollow" @click="delectFile(item.name)">X</a>
         <Button style="margin-left:30px;"
         size="small"
         v-if="index === 0"
        ![](https://user-gold-cdn.xitu.io/2018/3/14/16223a8c12c38be9?w=649&h=743&f=png&s=55740)
         type="primary"
         @click="upload"
         :loading="loadingStatus">上傳</Button>
        </div>

        用到的API參數 / 方法

      12. multiple : 是否支持多選文件 默認 false
      13. before-upload:上傳文件這前的事件鉤子,若返回 false 或者 Promise 則停止自動上傳
      14. show-upload-list: 是否顯示已上傳文件列表 默認為true
      15. on-success: 上傳文件成功后的事件鉤子,返回 res(接口方返回的信息), file(上傳文件), fileList(上傳文件List)
      16. action: 文件上傳地址
      17. 上傳選擇文件 判斷文件格式 保存文件

        選擇文件后會調用方法,在里面做的事情有 判斷文件類型是否滿足需求,如果滿足就保存到需要上傳的文件List里,這里我們需要自己定義一個keyID,應為是動上傳需要展示,刪除功能,如果沒有唯一ID不知道刪除那個

        這里如果允許文件上傳了不用但心什么,此鉤子會把選擇的當數組一樣需要調用上文件事件前的鉤子事件,所以也不能但心多文件選擇只會生成一個KeyID

        handleUpload (file) { // 上傳文件前的事件鉤子
         // 選擇文件后 這里判斷文件類型 保存文件 自定義一個keyid 值 方便后面刪除操作
         let keyID = Math.random().toString().substr(2);
         file['keyID'] = keyID;
         // 保存文件到總展示文件數據里
         this.file.push(file);
         // 保存文件到需要上傳的文件數組里
         this.uploadFile.push(file)
         // 返回 falsa 停止自動上傳 我們需要手動上傳
         return false;
        }

        刪除功能

        delectFile (keyID) { // 刪除文件
         // 刪除總展示文件里的當前文件
         this.file = this.file.filter(item => {
         return item.name != name
         })
         // 刪除需要上傳文件數據里的當前文件
         this.uploadFile = this.uploadFile.filter(item => {
         return item.KeyID != keyID
         })
        }

        上傳文件

        upload () { // 上傳文件
         for (let i = 0; i < this.uploadFile.length; i++) {
         let item = this.file[i]
         this.$refs.upload.post(item);
         }
        },

        這里如果是多文件的時候需要循環上傳一個一個來,如果一次上傳多個組件會報錯,只支持一次上傳一個文件,希望iView 以后會支持一次上傳多個吧,這個上傳我開始一直找不到,不知道手動上傳停止自己上傳后怎么手動傳,找功能找半天,在官方文檔里也沒有寫,官方到是有一個例子手動上傳的但:

         

        并沒有事實上傳的操作 這里也只是模擬啦 上傳方法是在源碼里找到的

        上傳成功后

        應該我們的上傳文件功能和提交整個頁面的數據是分開的 所以提交數據的時候需要驗證選擇文件是否以上傳在上傳成功事件里讓后右把我們傳過去的數據返出來做清空待上傳文件數組里的數據,提交數據時候只需要判斷待上傳文件數組是否為空就可以了

        文件上傳回調返回三個參數

      18. res 上傳結果 成功與失敗 上傳之后的地址
      19. file 此次上傳的文件
      20. uploadSuccess (res, file) { // 文件上傳回調 上傳成功后刪除待上傳文件
         console.log(response)
         console.log(file)
        },

        這里有個小問題 應該上傳的時候是循環調用上傳的,如果多個文件上傳這里會有多個回調結果不能成功一個文件提示用戶一次,所以需要處理一下,這里自定義一個數每次回調回來作自增處理,當值與上待上傳文件的length 相等時才提示上傳結果

        完整代碼GitHub地址 https://github.com/bailin240/ArticleCode/tree/master/view/iViewUpload

        總結

        以上所述是小編給大家介紹的vue iView 上傳組件之手動上傳功能,希望對大家有所幫助,如果大家有任何疑問請給我留言,小編會及時回復大家的。在此也非常感謝大家對腳本之家網站的支持!

        聲明:本網頁內容旨在傳播知識,若有侵權等問題請及時與本網聯系,我們將在第一時間刪除處理。TEL:177 7030 7066 E-MAIL:11247931@qq.com

        文檔

        vue iView 上傳組件之手動上傳功能

        vue iView 上傳組件之手動上傳功能:基于 Vue 的 UI 組件庫現在已經有很多了,尤其是移動端的。現在又多了一個 iView 。 iView 主要服務于 PC 界面的中后臺業務,是一套高質量的開源 UI 組件庫,先上地址: https://github.com/iview/iview 官網是: https://www.iview
        推薦度:
        標簽: 上傳 VUE 手動
        • 熱門焦點

        最新推薦

        猜你喜歡

        熱門推薦

        專題
        Top
        主站蜘蛛池模板: 国产精品亚洲精品爽爽| 亚洲熟女少妇一区二区| 妞干网在线免费视频| 好男人视频社区精品免费| 亚洲入口无毒网址你懂的| 另类小说亚洲色图| 国产免费卡一卡三卡乱码| 亚洲va久久久噜噜噜久久天堂| 亚洲成a人片毛片在线| 美国毛片亚洲社区在线观看| 精品视频一区二区三区免费| 在线看片无码永久免费视频| heyzo亚洲精品日韩| 亚洲精品中文字幕无码AV| 免费的黄色的网站| 无码区日韩特区永久免费系列| 在线永久看片免费的视频| 亚洲校园春色另类激情| 国产男女猛烈无遮档免费视频网站| 亚洲高清免费在线观看| 三级网站免费观看| 免费看一级做a爰片久久| 国产区在线免费观看| 女人18毛片免费观看| 免费国产va视频永久在线观看| 成人午夜亚洲精品无码网站 | 国产精品亚洲A∨天堂不卡| 亚洲色大成WWW亚洲女子| 亚洲午夜免费视频| 国产亚洲午夜高清国产拍精品| 亚洲熟妇少妇任你躁在线观看| 免费少妇a级毛片| 亚洲色大成WWW亚洲女子| 国产成人精品亚洲精品| 国产亚洲精品美女久久久久久下载| 亚洲综合国产精品第一页| 99在线热视频只有精品免费| 亚洲老妈激情一区二区三区| 日韩视频在线精品视频免费观看| 黄色一级视频免费观看| 爱情岛论坛网亚洲品质自拍|