Element upload組件上傳圖片與回顯圖片


場景:新增商品時需要添加商品主圖,新增成功之后可編輯

上傳圖片:

<el-form-item label="專區logo:" style="height:160px">
            <div class="img">
              <el-upload
                action="https://testopenapi.nbdeli.com/crm/customer/saveChannelLogoFile"
                :limit="1"
                :on-preview="handlePictureCardPreview"
                :on-success="handleUploadSuccess"
                list-type="picture-card"
                :on-remove="handleRemove"
                :class="{disabled:uploadDisabled}"
                :file-list="fileList"
              >
                <i class="el-icon-plus"></i>
              </el-upload>
              <el-dialog :visible.sync="dialogVisible">
                <img width="100%" :src="ruleForm.dialogImageUrl" alt />
              </el-dialog>
            </div>
            <div class="imgSpan2">只能上傳jpg/png文件,50X50px</div>
          </el-form-item>
data(){
  return{
    uploadDisabled: false,
        logoId: "1", //專區logo id
       dialogVisible: false,
      fileList: [],
       ruleForm: {
        dialogImageUrl: "1", //專區logo 上傳到后台之后,后台會返回一個id,只需要給后台傳id,但是點擊編輯的時候后台返回的是http地址
      },
   }  
}
 
         
//刪除圖片
handleRemove(file, fileList) {
console.log(file);
this.uploadDisabled = false;
},
//上傳中
    handlePictureCardPreview(file) {
      this.dialogImageUrl = file.url;
      console.log(this.dialogImageUrl);
      this.dialogVisible = true;
      this.uploadDisabled = true;
    },
    //上傳成功
    handleUploadSuccess(file) {
      this.ruleForm.dialogImageUrl = file.result; //專區logoId
      this.uploadDisabled = true;
    },

上傳圖片就完成了

 

以下是編輯圖片;

在點擊編輯的時候 ,獲取url地址
需要把url 添加到 fileList 里面
let urlStr = response.data.result.url.split(","); //logo地址
          urlStr.forEach(item => {
            let obj = new Object();
            obj.url = item;
            this.fileList.push(obj);
          });

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM