element-upload二次封裝文件圖片上傳锯玛,太好用了愛了愛了咐柜,

這個數(shù)字…………
在這里插入圖片描述

起因:

由于最近做的是CMS系統(tǒng)兼蜈,上傳文件,圖片功能太多拙友,使用element的文件上傳組件为狸,但是每次都需要寫,感覺太繁瑣遗契,于是有了男人的想法………對 element 的文件上傳組件進(jìn)行了封裝

個人認(rèn)為還是挺全的辐棒,如果各位小哥有更好的建議或意見歡迎評論區(qū)提出,我會根據(jù)實(shí)際情況進(jìn)行更改組件

組件已經(jīng)上傳到了 github 和 npm


組件優(yōu)勢---------->使用方便牍蜂,比例(80*80)漾根,大小(MB)鲫竞,校驗(yàn)(必填項(xiàng))等辐怕,一個參數(shù)搞定,記得點(diǎn)贊藏哦

1:增加上傳為空校驗(yàn)从绘,可選擇是否是必填項(xiàng)
2:自定義為空提示
2:增加上傳圖片的比例尺寸校驗(yàn)寄疏,例如圖片:支持圖片 === | >= || <= 80*80,80是使用的時候傳的
3:規(guī)定文件上傳大小
4:自定義上傳主題:圖片或文件
5:自定義上傳個數(shù)
6:指定文件上傳完畢后是否繼續(xù)顯示上傳按鈕
7:增加一鍵清空按鈕僵井,可以根據(jù)參數(shù)讓他顯示不顯示
8:文件上傳成功后陕截,可自動對你的參數(shù)進(jìn)行賦值
9:是否開啟剪裁(還在開發(fā),請持續(xù)關(guān)注)
10:Hppt: 上傳的端口批什,本地環(huán)境农曲,測試環(huán)境,上線環(huán)境
單選驻债、多選乳规、支持發(fā)送 cookie 憑證信息等

github 地址

https://github.com/jasen666/uploadmodel

npm 地址

https://www.npmjs.com/package/jasen-vue-uploadmodel

如果還不會把自己寫的代碼放到 npm 請立即學(xué)習(xí)!H春骸驯妄!
可以參考我的另外一篇文章:
https://blog.csdn.net/weixin_46095200/article/details/107235451

使用方法:

npm i jasen-vue-uploadmodel -S
import Vue from 'vue'
import UploadFile from 'jasen-vue-uploadmodel'
 
Vue.component('UploadFile', UploadFile)
<UploadFile
        clearButtonStyle="margin-left:80px;margin-top:10px"
        :visible="changeFormVisible"
        :Hppt="Hppt"
        :className="'My-el-form-item'"
        :fromKey="'logo'"
        @setUrlPath="SetUrlPath"
        :limit="1"
        :fileList.sync="fileListLogo"
        :label="'logo'"
      />

Api

Attributes

Name must fill Type Default Description
accept String ".jpg, .png, .gif, .jpeg" "上傳文件的類型荷并,默認(rèn)圖片類型"
Hppt ==是== String ' ' 上傳文件的端口地址(本地環(huán)境合砂、測試環(huán)境、線上環(huán)境)
port ==是== String ' ' 上傳圖片的地址源织,詳細(xì)地址(/upload.json這樣)
Size Number翩伪,Boolean false 是否需要規(guī)定上傳文件的大小
needRequired Boolean true 是否需要為空校驗(yàn)
errorMessage String 請上傳圖片文件 為空提交的時候的提示
fileList ==是== Array [] 文件上傳的一個數(shù)組,用來存放上傳文件內(nèi)容 ,需要.sync支持
putSuccessShowAddBtn Boolean false 上傳成功后是否還展示谈息,上傳按鈕
Proportion Boolean缘屹,Array false 是否需要規(guī)定圖片的尺寸比例大小
computationRule String === 進(jìn)行比例對比時的規(guī)則,支持:===侠仇,>=轻姿,<=
listType String picture-card 是上傳圖片犁珠,還是上傳文件,圖片使用:picture-card,文件使用:text
showFileList Boolean true 上傳成功后是否需要上傳進(jìn)行展示已上傳文件列表
fromKey ==是== String互亮,Array ' ' 上傳成功后犁享,將要修改的字段名字,把后臺的文件路徑進(jìn)行復(fù)制
limit Number 1 上傳文件的個數(shù)
showClearAllBtn Boolean true 是否展示一鍵清除按鈕
needMultiple Boolean false 是否支持多選
withCredentials Boolean false 是否上傳cooike憑證
headers object ' ' 設(shè)置上傳的請求頭部
label String ' ' 上傳圖片的左側(cè)內(nèi)容:例如:上傳背景圖豹休,上傳商標(biāo)啥啥的
clearButtonStyle String margin-top:10px 一鍵清除的按鈕樣式
visible Boolean false 建議傳一個動態(tài)的炊昆,當(dāng)你進(jìn)行回顯的時候會有一個,漸顯的效果威根,體驗(yàn)不是特別好凤巨,
==================== ========= ============ ================= ==================================



Methods

Method Description
@deleteServeFile="deleteServeFile" 圖片文件進(jìn)行刪除的時候會觸發(fā),此時你會拿到文件的信息洛搀,去服務(wù)器刪除數(shù)據(jù)+
@setUrlPath="SetUrlPath" 文件上傳到服務(wù)器敢茁,會通過這個自定義方發(fā)把服務(wù)返回內(nèi)容傳過去

對象參數(shù)

this.$emit('setUrlPath',{
        fromKey: this.fromKey,
        url: response.imgUrl, //傳入服務(wù)器返回數(shù)據(jù)
        multiple, //判斷是否是多選
        response,//服務(wù)器返回的信息
        nowIndex:
          multiple === true
            ? fileList.findIndex(item => item.url === response.imgUrl)
            : "" //傳入當(dāng)前下標(biāo)
      })

==注意==

文件上傳成功后會通過這個參數(shù)把把服務(wù)器返回的數(shù)據(jù),返回過來留美,大家可以在這里進(jìn)行數(shù)據(jù)處理
下面是我的使用方發(fā)卷要,大家可以借鑒

    SetUrlPath(prcturlData) {
      if (prcturlData.multiple) {//判斷單選多選
      //fromdata 點(diǎn)擊保存按鈕向服務(wù)器發(fā)送數(shù)據(jù)
        this.fromdata[prcturlData.fromKey[prcturlData.nowIndex]] =
          prcturlData.url;
      } else {//單選直接復(fù)制,URL是文件上傳成功后独榴,返回的地址
        this.fromdata[prcturlData.fromKey] = prcturlData.url;
      }
    },

建議element版本2.5以上哦僧叉,不然slot-scope不好使,你的單個刪除按鈕也沒有用

單個刪除

部分內(nèi)容演示

圖片格式 + 是否校驗(yàn) + 一鍵清空 +上傳成功后不再顯示上傳按鈕

在這里插入圖片描述
:listType='picture-card'
默認(rèn)是:picture-card(圖片格式) 可選值 text(文件格式)

:needRequired='false'
默認(rèn)是true棺榔,需要校驗(yàn)瓶堕,設(shè)置為false就不會對大校驗(yàn)了,

:errorMessage='校驗(yàn)提示內(nèi)容'
校驗(yàn)內(nèi)容自定義

:showClearAllBtn='true'
是否顯示一鍵清空按鈕症歇,默認(rèn)是true

:putSuccessShowAddBtn='false'
上傳成功后是否還繼續(xù)顯示上傳按鈕郎笆,默認(rèn)是 false 不顯示

圖片格式 + 上傳成功顯示按鈕 + 限制文件大小
在這里插入圖片描述

:Size="0.05"
默認(rèn)是 false,想校驗(yàn)文件大小之接按1024計算傳過去就好了

:putSuccessShowAddBtn='true'
上傳成功后是否還繼續(xù)顯示上傳按鈕,默認(rèn)是 false 不顯示

:listType='picture-card'
默認(rèn)是:picture-card(圖片格式) 可選值 text(文件格式)
 

圖片限制比例大小 (80*80)

在這里插入圖片描述
  :Proportion="[250,250]"
  需要校驗(yàn)比例的話需要傳入一個數(shù)組忘晤,且必須為兩個值值類型為數(shù)字宛蚓,多傳無效
  
  :computationRule="'>='"
  校驗(yàn)的類型,=== 大小必須等于 >= 比例大小大于等于设塔, 比例大小 <=

文件類型
在這里插入圖片描述

其他都一樣凄吏,之不過這個是文件類型的

  :listType="'text'"
  默認(rèn)是:picture-card(圖片格式) 可選值 text(文件格式)

結(jié)尾

暫時就寫這么多吧,記得點(diǎn)贊哦??

如果各位小哥有更好的建議或意見歡迎評論區(qū)提出闰蛔,我會根據(jù)實(shí)際情況進(jìn)行更改組件
最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
  • 序言:七十年代末痕钢,一起剝皮案震驚了整個濱河市,隨后出現(xiàn)的幾起案子序六,更是在濱河造成了極大的恐慌任连,老刑警劉巖,帶你破解...
    沈念sama閱讀 207,113評論 6 481
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件例诀,死亡現(xiàn)場離奇詭異随抠,居然都是意外死亡裁着,警方通過查閱死者的電腦和手機(jī),發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 88,644評論 2 381
  • 文/潘曉璐 我一進(jìn)店門拱她,熙熙樓的掌柜王于貴愁眉苦臉地迎上來跨算,“玉大人,你說我怎么就攤上這事椭懊≈畈希” “怎么了?”我有些...
    開封第一講書人閱讀 153,340評論 0 344
  • 文/不壞的土叔 我叫張陵氧猬,是天一觀的道長背犯。 經(jīng)常有香客問我,道長盅抚,這世上最難降的妖魔是什么漠魏? 我笑而不...
    開封第一講書人閱讀 55,449評論 1 279
  • 正文 為了忘掉前任,我火速辦了婚禮妄均,結(jié)果婚禮上柱锹,老公的妹妹穿的比我還像新娘。我一直安慰自己丰包,他們只是感情好禁熏,可當(dāng)我...
    茶點(diǎn)故事閱讀 64,445評論 5 374
  • 文/花漫 我一把揭開白布。 她就那樣靜靜地躺著邑彪,像睡著了一般瞧毙。 火紅的嫁衣襯著肌膚如雪。 梳的紋絲不亂的頭發(fā)上寄症,一...
    開封第一講書人閱讀 49,166評論 1 284
  • 那天宙彪,我揣著相機(jī)與錄音,去河邊找鬼有巧。 笑死释漆,一個胖子當(dāng)著我的面吹牛,可吹牛的內(nèi)容都是我干的篮迎。 我是一名探鬼主播男图,決...
    沈念sama閱讀 38,442評論 3 401
  • 文/蒼蘭香墨 我猛地睜開眼,長吁一口氣:“原來是場噩夢啊……” “哼柑潦!你這毒婦竟也來了享言?” 一聲冷哼從身側(cè)響起,我...
    開封第一講書人閱讀 37,105評論 0 261
  • 序言:老撾萬榮一對情侶失蹤渗鬼,失蹤者是張志新(化名)和其女友劉穎,沒想到半個月后荧琼,有當(dāng)?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體譬胎,經(jīng)...
    沈念sama閱讀 43,601評論 1 300
  • 正文 獨(dú)居荒郊野嶺守林人離奇死亡差牛,尸身上長有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點(diǎn)故事閱讀 36,066評論 2 325
  • 正文 我和宋清朗相戀三年,在試婚紗的時候發(fā)現(xiàn)自己被綠了堰乔。 大學(xué)時的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片偏化。...
    茶點(diǎn)故事閱讀 38,161評論 1 334
  • 序言:一個原本活蹦亂跳的男人離奇死亡,死狀恐怖镐侯,靈堂內(nèi)的尸體忽然破棺而出侦讨,到底是詐尸還是另有隱情,我是刑警寧澤苟翻,帶...
    沈念sama閱讀 33,792評論 4 323
  • 正文 年R本政府宣布韵卤,位于F島的核電站,受9級特大地震影響崇猫,放射性物質(zhì)發(fā)生泄漏沈条。R本人自食惡果不足惜,卻給世界環(huán)境...
    茶點(diǎn)故事閱讀 39,351評論 3 307
  • 文/蒙蒙 一诅炉、第九天 我趴在偏房一處隱蔽的房頂上張望蜡歹。 院中可真熱鬧,春花似錦涕烧、人聲如沸月而。這莊子的主人今日做“春日...
    開封第一講書人閱讀 30,352評論 0 19
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽景鼠。三九已至,卻和暖如春痹扇,著一層夾襖步出監(jiān)牢的瞬間铛漓,已是汗流浹背。 一陣腳步聲響...
    開封第一講書人閱讀 31,584評論 1 261
  • 我被黑心中介騙來泰國打工鲫构, 沒想到剛下飛機(jī)就差點(diǎn)兒被人妖公主榨干…… 1. 我叫王不留浓恶,地道東北人。 一個月前我還...
    沈念sama閱讀 45,618評論 2 355
  • 正文 我出身青樓结笨,卻偏偏與公主長得像包晰,于是被迫代替她去往敵國和親。 傳聞我的和親對象是個殘疾皇子炕吸,可洞房花燭夜當(dāng)晚...
    茶點(diǎn)故事閱讀 42,916評論 2 344