Element-ui upload上傳文件限制的解決方法
問題
在accept中添加上傳文件的類型只能起到“表面”作用,選擇“所有文件”之后,還是可以上傳任何類型的文件,根本起不到限制作用。
解決辦法
在before-upload(上傳文件之前的鉤子,參數(shù)為上傳的文件,若返回 false 或者返回 Promise 且被 reject,則停止上傳。)鉤子里去做判斷。這里有一個坑,當你設置了 :auto-upload="false"的時候, 這個鉤子是不會被觸發(fā)的,因此也可以在on-change中做判斷。
上代碼
// :before-upload或者:on-change綁定的方法 beforeUpload(file, fileList) { if (file.size / (1024 * 1024) > 500) { // 限制文件大小 this.$message.warning(`當前限制文件大小不能大于500M`) return false } let suffix = this.getFileType(file.name) //獲取文件后綴名 let suffixArray = ['jpg', 'png', 'jpeg', 'gif'] //限制的文件類型,根據(jù)情況自己定義 if (suffixArray.indexOf(suffix) === -1) { this.$message({ message: '文件格式錯誤', type: 'error', duration: 2000 }) } return suffixArray }, getFileType(name) { let startIndex = name.lastIndexOf('.') if (startIndex !== -1) { return name.slice(startIndex + 1).toLowerCase() } else { return '' } }
到此這篇關于Element-ui upload上傳文件限制的解決方法的文章就介紹到這了,更多相關Element upload上傳限制內(nèi)容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關文章希望大家以后多多支持腳本之家!
相關文章
通過GASP讓vue實現(xiàn)動態(tài)效果實例代碼詳解
GASP是一個JavaScript動畫庫,它支持快速開發(fā)高性能的 Web 動畫。GASP 使我們能夠輕松輕松快速的將動畫串在一起,來創(chuàng)造一個高內(nèi)聚的流暢動畫序列。這篇文章主要介紹了通過GASP讓vue實現(xiàn)動態(tài)效果,需要的朋友可以參考下2019-11-11Vue路由對象屬性 .meta $route.matched詳解
今天小編就為大家分享一篇Vue路由對象屬性 .meta $route.matched詳解,具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧2019-11-11Vue中?引入使用?babel-polyfill?兼容低版本瀏覽器的方法
最近在項目中使用 webpack 打包后升級,用戶反饋使用瀏覽器(chrome 45)訪問白屏。經(jīng)過排查發(fā)現(xiàn):由于 chrome 45 無法兼容 ES6 語法導致的,接下來給大家介紹下Vue中?引入使用?babel-polyfill?兼容低版本瀏覽器方法,需要的朋友可以參考下2023-02-02