【VUE】在element-ui里面加参数

277 阅读1分钟

前言

今天开发遇到了一个场景:循环里面放el-upload,在上传文件时需要获取到循环的index,但是on-change自带的参数(file, fileList)也需要用到,所以不能重写函数,只能新加index

原本是想根据vue文档里面的$event调用函数的原参 image.png

刚开始是这么写的:

<div v-for="(item, index) in list" :key="index">
  <el-upload action="" :file-list="doc.fileList" 
  :show-file-list="false" 
  :auto-upload="false" 
  :on-change="fileChange($event, index)"
  :multiple="false"
  :limit="1">
</div>

然后发现报错$event未定义,看了半天才反应过来是:on-change而不是@on-change:on-change是一个属性而不是绑定事件,所以需要传一个函数进去,最后改成:

<div v-for="(item, index) in list" :key="index">
  <el-upload action="" :file-list="doc.fileList" 
  :show-file-list="false" 
  :auto-upload="false" 
  :on-change="function (file, fileList) {return fileChange(file, fileList, index)}"
  :multiple="false"
  :limit="1">
</div>

就可以啦~ 希望各位可以互相交流,有问题麻烦指出一下哈~🥰