ElementUI中上传组件在表单中携带其它值提交使用

ElementUI中的上传组件在表单中携带其它值提交表单后一起传到后端
例:

      <el-form :model="submitForm"   label-width="60px">
        <el-form-item label="性别">
          <el-radio-group v-model="submitForm.name">
            <el-radio label=""></el-radio>
            <el-radio label=""></el-radio>
          </el-radio-group>
        </el-form-item>
        <el-form-item label="头像" ref="uploadElement" prop="imageUrl">
          <el-input v-model="submitForm.imageUrl" v-if="false"></el-input>
          <el-upload
              class="avatar-uploader"
              ref="upload"
              :show-file-list="false"
              :before-upload="beforeUpload"
              :on-change="handleChange"
              :auto-upload="false"
              :data="submitForm">
            <img v-if="submitForm.imageUrl" :src="submitForm.imageUrl" class="avatar">
            <i v-else class="el-icon-plus avatar-uploader-icon"></i>
          </el-upload>
        </el-form-item>
        <el-form-item>
          <el-button type="primary" @click="submit()">提交</el-button>
        </el-form-item>
        <el-image :src="this.resultUrl" v-if="resultP"></el-image>
      </el-form>

  methods: {
    submit() {
      this.$refs.upload.submit();
    },
    handleChange (file, fileList) {
      this.submitForm.imageUrl = URL.createObjectURL(file.raw);
    },
    beforeUpload(file) {
      let fd = new FormData()
      fd.append('file', file)
      fd.append('name', this.submitForm.name)
      postAction(fd).then(res => {
        if (res.status === 200){
        //返回结果业务处理
        }
      })
      return true;
    },
  },
export function postAction (data) {
  return axios({
    method: 'post',
    url: '',
    timeout: 20000,
    data: data 
  })
}
  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

打赏作者

LeBron永鑫

你的鼓励将是我创作的最大动力

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

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

打赏作者

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

抵扣说明:

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

余额充值