实际开发中,ant design vue的上传组件的使用

实际开发中,ant design vue的上传组件的使用

html

<div class="right" v-if="$store.state.user.userDesc.id === '1'">
    <img :src="saveUploadImage || currentData.pictureUrl || defaultService" />
    <a-upload 
        accept=".png,.jpg,.jpeg"    // 文件限制类型
        :showUploadList="false"      // 是否显示上传的文件列表  默认true
        :file-list="fileList"       // 文件上传列表
        :before-upload="beforeUploadFile"   // 文件上传之前的回调:用于限制上传的文件
        :customRequest="customRequest"     // 自定义上传请求   : 代替action属性
        @change="handleChange"
        :multiple="false"    // 禁止上传多个
        style="width: 100%;text-align:center;display: inline-block;margin-top:25px;" >
    	<a-button type="link">上传/重新上传 </a-button>
    </a-upload>
</div>

逻辑层

import defaultService from '@/assets/img/share/defaultService.png'  // 默认图片
import {uploadImage} from '@/api/shareCenter/index.js'   // 上传的后端接口
// 拖拽组件
export default {
  name: "ServiceInfo",
  props : ['currentData'],
  data() {
    return {
        defaultService,
        fileList : [],
        saveUploadImage : null
    }
  },
  components: {
  },
  methods: {
    handleChange({ file, fileList }) {
        this.fileList = fileList
    },
    beforeUploadFile (f, l) {
      // 后端控制上传的文件大小上限为:20M
      const isLt20M = f.size / 1024 / 1024 < 20
      if(!isLt20M) {
        this.$message.error(f.name + '文件大小超出限制,请修改后重新上传')
        return false
      } else {
        return true
      }
    },
    // 自定义请求
    customRequest(data) {
        const formData = new FormData();
        formData.append('file',data.file),
        uploadImage(this.currentData.id,formData).then(res=>{
            if(res.data.success) {
                this.saveUploadImage = res.data.data
            } else {
                this.$message.error('上传失败')
            }
        })
    }
  }
};

官网ant-design for Vue

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

原谅我很悲

不要打赏哦,加个好友一起学习呗

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值