vue ant Upload 上传

单个页面上传

二话不说 上代码

<!-- 单个页面上传   vue ant Upload 上传-->
<template>
  <!-- action 上传地址 
       name 发送后台的参数名
       beforeUpload 上传前的限制条件
       accept 接受文件类型
       headers 请求头
       fileList 文件列表
       handleChange 文件改变时的钩子函数
  -->
  <a-upload :action="uploadUrl" name="image" :accept="accept" :headers="tokenHeader" :beforeUpload="beforeUpload" :file-list="fileList" @change="handleChange">
    <a-button> <a-icon type="upload" /> Upload </a-button>
  </a-upload>
</template>
<script>
export default {
  data() {
    return {
      action: '',//上传地址
      accept:".png,.jpg,.pdf",//接受文件类型(png,jpg,pdf)
      tokenHeader:{token},//请求头()存放对应的token
      fileList: [
        {
          url: '',//编辑时的图片地址
        },
      ],
    }
  },
  methods: {
    beforeUpload(file,fileList){// 上传前的限制 大小 类型
     const limitSize=file.size/1024/1024<5;
     if(!limitSize){
      this.$message(file.name+"文件大小不能超过5M")
      return false;
     }
    //  判断上传格式 (第1种)
    //  const limitType=file.type==="image/png"||file.type==="image/jpg"||file.type==="image/jpeg"||file.type==="application/pdf";
    //  if(!limitType){
    //   this.$message.warning(file.name+"文件格式不正确")
    //   return false;
    //   }

    // 判断上传格式 (第2种)
    let extension=file.name.split(".")[1]==='doc';
    let extension1=file.name.split(".")[1]==='jpg';
    if(!extension && !extension1){
      this.$message.warning(file.name+"文件格式不正确")
      return false;}
    },
    handleChange(info) {
      if (info.file.status === 'done') {
        if (info.file.response.code === 0) {
          this.fileList = [...this.fileList, info.file.response.data]

          this.fileList=this.fileList.slice(0,1)//限制上传一个
          return false
        }
        }
    },
  }
}
</script>
<style></style>

上传封装调用

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值