antdvue 附件上传


 注:以下方法都是依据Ant Design of Vue为参考

第一种方式(仅适用于上传,不可拿返回的数据作为参数请求接口):

因为函数作用域原因,不可以赋值给全局变量使用

在data中声明 customRequest:null

vue

 ref="ruleForm" :rules="rules" :model="form" :label-col="labelCol" :wrapper-col="wrapperCol">
        "附件">
              "file" :customRequest="customRequest">   
                "upload" @click="upload"> 上传
              
                  

methods

upload() {
    
      this.customRequest = function (options) {
        let params = new FormData()
        params.append('files', options.file)

        params.forEach((key) => {
          console.log(key);   //key的内容是上传的整个文件信息
        })
this.$axios.get("/web/mulFileUpload", {params}).then((res) => {
if(res.code=200){console.log("上传成功")}
})
} },

第二种方式(可拿返回的数据作为参数请求接口):

vue

 ref="ruleForm" :rules="rules" :model="form" :label-col="labelCol" :wrapper-col="wrapperCol">
        "附件">
              "file" :customRequest="customRequest">   
                "upload" @click="upload"> 上传
              
                  

methods

 customRequest(data) {
      let params = new FormData()
      params.append('files', data.file)

      params.forEach((key) => {
        console.log(key)
        this.enclosureName = key.name
        this.enclosureSize = key.size
        this.enclosureType = key.type
      })
    },

示例图:

vue