前端vue+elementui实现上传base64图片

elementui

<el-upload
  action = "/"
  :show-file-list = "false"
  :before-upload = "file => beforeUpload(1,file)"//这个 1 是给每一个图片的标志位 随意 对应上即可
>
 <img 
   onerror = "defaultImage" //设置默认图片
   :src = "form.activityPic"
  >
</el-upload>
JS


beforeUpload(index,file){
this.getFile(index,file)
},
getFile(index, file){
   if(
     file.type == "image/jpeg"||
     file.type == "image/jpg"||
     file.type == "image/png"
)
{
 var reader = new FileReader();
 reader.readAsDataURL(file)
 reader.onload = () => {
    if(index == 1){
   this.form.activityPic = reader.result
//之后调用接口的时候传递this.form.activityPic的值即可
}

}
}
else {
alert("请输入正确图片格式")
}
}

图片返显的话,传过去什么格式的话,接口返回什么格式就可以返显啦!!!
defaultImage:'this.src="' + require("写地址就好了") + '"'//默认图片
写到data的return中,当作默认数据使用
但是这个写法是要根据你的node版本,我10.几的版本可以但是用8.几的是不可以的

如果想来一个兼容性强的方法,则在vue页面上用import引入项目中图片 
import home from ../../images/item01.png
之后在return {}里 home_Url: home
第三步在图片 :src="form.pic?form.pic:home_Url"
这就大功告成了

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值