为了账号安全,请及时绑定邮箱和手机立即绑定

如何向钩子函数(elment 的上传组件的事件)传递参数

如何向钩子函数(elment 的上传组件的事件)传递参数

吃鸡游戏 2019-03-06 13:14:41
实际的开发需求是这样的,页面会动态生成若干个子组件,每个组件都有上传图片并实时预览图片的功能(这里我用的是element-ui的Upload组件),遇到的问题是不知道如何把索引值传递给哪个函数,以实现不同子组件预览对应其上传的图片的功能<template>  <div>    <template v-for="(item,i) in 4">      <div :key="i" style="display:inline-block;margin-right:20px;">        <el-upload class="avatar-uploader" action="https://jsonplaceholder.typicode.com/posts/" :show-file-list="false" :on-success="handleAvatarSuccess">          <img v-if="imageUrl" :src="imageUrl" class="avatar">          <i v-else class="el-icon-plus avatar-uploader-icon"></i>        </el-upload>      </div>    </template>  </div></template>
查看完整描述

2 回答

?
Qyouu

TA贡献1786条经验 获得超11个赞

 <template v-for="(item,i) in 4">

      <div :key="i" style="display:inline-block;margin-right:20px;">

        <el-upload class="avatar-uploader" :action="uploadUrl" :show-file-list="false" :on-success="handleAvatarSuccess.bind(this,i)">

          <img v-if="imageUrl" :src="imageUrl" class="avatar">

          <i v-else class="el-icon-plus avatar-uploader-icon"></i>

        </el-upload>

      </div>

    </template>

    <script>

export default {

  data() {

    return {

      uploadUrl: '/api/upload',

      imageUrl: ''

    }

  },

  methods: {

    handleAvatarSuccess(idx,res,file,fileList){

      console.log(idx)

    }

  }

}

</script>

通过es5的Bind,绑定到函数上,就可以实现钩子函数的传参了


查看完整回答
1 反对 回复 2019-03-21
?
BIG阳

TA贡献1859条经验 获得超6个赞

可以用item中的唯一标示来传给这个子组件如(id)


查看完整回答
反对 回复 2019-03-21
  • 2 回答
  • 0 关注
  • 1030 浏览
慕课专栏
更多

添加回答

举报

0/150
提交
取消
微信客服

购课补贴
联系客服咨询优惠详情

帮助反馈 APP下载

慕课网APP
您的移动学习伙伴

公众号

扫描二维码
关注慕课网微信公众号