element-ui upload上傳組件踩坑之——fileList

我這里的功能需求是上傳圖片环葵,就不細(xì)說(shuō)了贴妻,代碼如下

      <el-form-item label="圖片地址" :label-width="formLabelWidth" prop="listUploadId">
          <el-upload
              :action="actionUrl"   // 圖片上傳地址
              :headers="headers"   // 因?yàn)樯蟼鲿r(shí)需要token,所以需要自定義headers
              :before-upload="beforeUpload"   // 文件上傳前的鉤子,可以在這個(gè)鉤子函數(shù)里判斷上傳的圖片的類(lèi)型和大小是否達(dá)標(biāo)
              :limit="5"   // 上傳圖片的個(gè)數(shù)限制
              :on-exceed="exceed"   // 上傳圖片超出數(shù)量限制時(shí)的鉤子
              :on-success="uploadSuccess"  // 上傳成功時(shí)的鉤子
              :on-remove="fileRemove"     // 文件列表移除文件時(shí)的鉤子病线,也就是刪除圖片時(shí)會(huì)觸發(fā)的鉤子
              :file-list="imageList"   // 上傳的文件列表危队,就是這個(gè)坑肴沫,下邊會(huì)細(xì)說(shuō)
              accept=".jpg, .jpeg, .png, .gif"   // 接受的圖片類(lèi)型
              list-type="picture-card"   // 文件列表的類(lèi)型
              >
          <i class="el-icon-plus"></i>
          </el-upload>
      </el-form-item>

下邊是相關(guān)的方法

methods:{
      //獲取商品信息
    getGoodsInfo(){
      this.$http.get(`/scyyGoodsStore/${this.id}`).then(({data:res}) => {
          if(res.code !== 200){
            return this.$message.error(res.msg);
          }
          this.form = {
            ...this.form,
            ...res.data
          }
          let imgList = this.form.imageVoList
          imgList.forEach( item => {
            this.imageList.push({
              id:item.id,
              url:item.imageUrl
            })
          })
      })
    },
    // 上傳圖片超出數(shù)量限制時(shí)的鉤子
    exceed(files, fileList){
          this.$message.error('最多上傳5張圖片哦宙枷!')
    },
    // 文件上傳前的鉤子掉房,數(shù)為上傳的文件
     beforeUpload(file) {
          // 判斷圖片是否大于2M
          const isLt2M = file.size /1024/1024 < 2;
          // const fileType = file.name.substring(file.name.lastIndexOf('.')+1)
          // 判斷圖片的類(lèi)型
          const isJpg = file.type ==  'image/jpeg' || file.type == 'image/jpg' || file.type == 'image/png' || file.type == 'image/gif'
          if(!isJpg){
              this.$message.error('只能上傳jpg, jpeg, png, gif格式的圖片茧跋!')
              return false
          }
          if (!isLt2M) {
              this.$message.error('上傳圖片大小不能超過(guò) 2MB!');
              return false
          }
      },
      // 上傳成功時(shí)的鉤子
      uploadSuccess(res,file,fileList){
        if(res.code !== 200){
            return this.$message.error(res.msg)
        }
        this.imageList.push(res.data)
        let formImgList = []
        this.imageList.forEach(item => {
          formImgList.push({
            id:item.id,
            imageType:0
          })
        })
        this.form.listUploadId = formImgList
      },
      // 文件列表移除文件時(shí)的鉤子
      fileRemove(file, fileList){
          this.imageList= fileList
          const list = []
          this.imageList.forEach(item => {
              list.push({
                id:item.id,
                imageType:0
              })
          })
          this.form.listUploadId = list
      }
}

大概效果

image.png
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
  • 序言:七十年代末,一起剝皮案震驚了整個(gè)濱河市卓囚,隨后出現(xiàn)的幾起案子瘾杭,更是在濱河造成了極大的恐慌,老刑警劉巖哪亿,帶你破解...
    沈念sama閱讀 212,185評(píng)論 6 493
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件粥烁,死亡現(xiàn)場(chǎng)離奇詭異,居然都是意外死亡锣夹,警方通過(guò)查閱死者的電腦和手機(jī)页徐,發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 90,445評(píng)論 3 385
  • 文/潘曉璐 我一進(jìn)店門(mén),熙熙樓的掌柜王于貴愁眉苦臉地迎上來(lái)银萍,“玉大人,你說(shuō)我怎么就攤上這事恤左√剑” “怎么了?”我有些...
    開(kāi)封第一講書(shū)人閱讀 157,684評(píng)論 0 348
  • 文/不壞的土叔 我叫張陵飞袋,是天一觀的道長(zhǎng)戳气。 經(jīng)常有香客問(wèn)我,道長(zhǎng)巧鸭,這世上最難降的妖魔是什么瓶您? 我笑而不...
    開(kāi)封第一講書(shū)人閱讀 56,564評(píng)論 1 284
  • 正文 為了忘掉前任,我火速辦了婚禮纲仍,結(jié)果婚禮上呀袱,老公的妹妹穿的比我還像新娘。我一直安慰自己郑叠,他們只是感情好夜赵,可當(dāng)我...
    茶點(diǎn)故事閱讀 65,681評(píng)論 6 386
  • 文/花漫 我一把揭開(kāi)白布。 她就那樣靜靜地躺著乡革,像睡著了一般寇僧。 火紅的嫁衣襯著肌膚如雪。 梳的紋絲不亂的頭發(fā)上沸版,一...
    開(kāi)封第一講書(shū)人閱讀 49,874評(píng)論 1 290
  • 那天嘁傀,我揣著相機(jī)與錄音,去河邊找鬼视粮。 笑死细办,一個(gè)胖子當(dāng)著我的面吹牛,可吹牛的內(nèi)容都是我干的馒铃。 我是一名探鬼主播蟹腾,決...
    沈念sama閱讀 39,025評(píng)論 3 408
  • 文/蒼蘭香墨 我猛地睜開(kāi)眼痕惋,長(zhǎng)吁一口氣:“原來(lái)是場(chǎng)噩夢(mèng)啊……” “哼!你這毒婦竟也來(lái)了娃殖?” 一聲冷哼從身側(cè)響起值戳,我...
    開(kāi)封第一講書(shū)人閱讀 37,761評(píng)論 0 268
  • 序言:老撾萬(wàn)榮一對(duì)情侶失蹤,失蹤者是張志新(化名)和其女友劉穎炉爆,沒(méi)想到半個(gè)月后堕虹,有當(dāng)?shù)厝嗽跇?shù)林里發(fā)現(xiàn)了一具尸體,經(jīng)...
    沈念sama閱讀 44,217評(píng)論 1 303
  • 正文 獨(dú)居荒郊野嶺守林人離奇死亡芬首,尸身上長(zhǎng)有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點(diǎn)故事閱讀 36,545評(píng)論 2 327
  • 正文 我和宋清朗相戀三年赴捞,在試婚紗的時(shí)候發(fā)現(xiàn)自己被綠了。 大學(xué)時(shí)的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片郁稍。...
    茶點(diǎn)故事閱讀 38,694評(píng)論 1 341
  • 序言:一個(gè)原本活蹦亂跳的男人離奇死亡赦政,死狀恐怖,靈堂內(nèi)的尸體忽然破棺而出耀怜,到底是詐尸還是另有隱情恢着,我是刑警寧澤,帶...
    沈念sama閱讀 34,351評(píng)論 4 332
  • 正文 年R本政府宣布财破,位于F島的核電站掰派,受9級(jí)特大地震影響,放射性物質(zhì)發(fā)生泄漏左痢。R本人自食惡果不足惜靡羡,卻給世界環(huán)境...
    茶點(diǎn)故事閱讀 39,988評(píng)論 3 315
  • 文/蒙蒙 一、第九天 我趴在偏房一處隱蔽的房頂上張望俊性。 院中可真熱鬧略步,春花似錦、人聲如沸磅废。這莊子的主人今日做“春日...
    開(kāi)封第一講書(shū)人閱讀 30,778評(píng)論 0 21
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽(yáng)拯勉。三九已至竟趾,卻和暖如春,著一層夾襖步出監(jiān)牢的瞬間宫峦,已是汗流浹背岔帽。 一陣腳步聲響...
    開(kāi)封第一講書(shū)人閱讀 32,007評(píng)論 1 266
  • 我被黑心中介騙來(lái)泰國(guó)打工, 沒(méi)想到剛下飛機(jī)就差點(diǎn)兒被人妖公主榨干…… 1. 我叫王不留导绷,地道東北人犀勒。 一個(gè)月前我還...
    沈念sama閱讀 46,427評(píng)論 2 360
  • 正文 我出身青樓,卻偏偏與公主長(zhǎng)得像,于是被迫代替她去往敵國(guó)和親贾费。 傳聞我的和親對(duì)象是個(gè)殘疾皇子钦购,可洞房花燭夜當(dāng)晚...
    茶點(diǎn)故事閱讀 43,580評(píng)論 2 349