vue文件上傳控件

下載地址:https://pan.baidu.com/s/1Z3pFh2J3xWa8YYnLoseasgjson

使用方式:服務器

<upload ref='upload' action-url='' :multiple='true'></upload>

action-url//文件保存地址
multiple//是否多個文件

在用戶點擊肯定按鈕的方法裏執行:
    this.$refs.upload.upload(callback);
其中callback用於接收保存後的圖片的地址或者保存失敗的錯誤信息,其中返回值爲json格式
callback接收的參數返回值格式爲:
  {
    res:1,//1表示成功 0表示失敗 -1表示用戶沒有選擇文件
    mes:若是不是1 這裏存放錯誤信息
    oldImgpath:若是是編輯的話 ,這裏存放的是以前的圖片地址,也就是使用initData放的時候傳入的圖片地址
  }

  在我寫的服務器端接收圖片的代碼裏,我自定義了返回格式是 {res:1,mes:'',imgList:[]} 因此服務器端與file控件內部封裝的返回json格式是一致的,這樣有利於使用方的統一處理,因此建議服務器端接收圖片的的接口返回格式與file控件一致

當但願初始化一些圖片的時候:
  this.$refs.upload.initData([圖片地址,圖片地址])

當但願重置參數的時候,執行:

  this.$refs.upload.reset()
 

 使用案例:this

  

    this.$refs.upload.upload(data => {
          if(data.res == "0"){//出錯了
            alert(data.mes)
            return;
          }
          if(data.res == "-1"){//未選擇文件
            alert("用戶未選擇文件")
            return;
          }
          let _data = data.imgList;//這個地方是用戶新上傳的圖片地址
          let oldImgpath = data.oldImgpath;//這個地方是編輯的時候傳進去的圖片地址
          let imgPathList = [];
          for(let i = 0; i < _data.length; i++){
            imgPathList.push(_data[i].value)//保存圖片地址
          }
        });
相關文章
相關標籤/搜索