vue+element获取el-table某行的下标,根据下标操作数组对象方式

时间:2022-08-23 00:01:52

1.在vue中对数组中的某个对象进行操作时(替换、删除),都需要用到该对象在数组中的下标。

前端代码:

scope.$index :获取当前行的下标

scope.row:获取当前行的对象

vue+element获取el-table某行的下标,根据下标操作数组对象方式

效果图:

vue+element获取el-table某行的下标,根据下标操作数组对象方式

思路:通过点击事件将该对象在数组中的下标传递到方法中,然后对数组进行操作

vue+element获取el-table某行的下标,根据下标操作数组对象方式

即可根据下标删除数组中对应的对象。

补充知识:vue-element-upload 文件上传打开选择文件弹框前进行提示或操作

在项目中使用文件上传功能时,需求是不能直接弹出弹框,要先二次确认或进行提示。引申开来,即可在打开选择文件弹框之前,做一系列操作。

实现思路在基于element-upload组件的基础上,再加一个按钮,触发按钮后进行选择文件前的操作,操作完成后触发upload的选择文件。

具体效果:点击‘导入‘时,提示必选项。

vue+element获取el-table某行的下标,根据下标操作数组对象方式

具体实现:

1、新写一个‘导入'按钮,以定位的形式遮挡上传组件。这里是将element-upload进行了二次封装。

组件使用:

  1. <div class="importBox">
  2. <el-button type="primary" icon="el-icon-upload2" class="box_btn" @click="onImport">导入</el-button>
  3. <ImportExcel ref="importFile" class="box_upload"@getImportFile='getImportFile'/>
  4. </div>

组件定义:

  1. <template>
  2. <el-upload
  3. class="upload-demo"
  4. ref="fileRefs"
  5. :action="action"
  6. :show-file-list="false"
  7. :accept="acctype"
  8. :limit="limit"
  9. :http-request="uploadFileRes"
  10. :before-upload="beforeAvatarUpload"
  11. >
  12. <el-button :loading="uploadLoading" type="primary" >导入</el-button>
  13. </el-upload>
  14. </template>

2、点击‘导入'触发事件。

  1. // 按钮-导入
  2. onImport() {
  3. // 可以先进行适合自己需求的操作,完成后再执行
  4.     this.$refs['importFile'].$refs['fileRefs'].$refs['upload-inner'].handleClick()触发选择文件
  5. this.$refs.searchForm.validate((valid) => {
  6. if (valid) {
  7. this.$refs['importFile'].$refs['fileRefs'].$refs['upload-inner'].handleClick()
  8. }
  9. })
  10. },

3、解析:

this.$refs['importFile'].$refs['fileRefs'].$refs['upload-inner'].handleClick()

通过ref逐层触发组件内按钮的handleClick事件,注意区分['importFile']、['fileRefs'],其中['upload-inner'] 是 ImportExcel 组件内部按钮的ref

可以将不同的ref在控制台打印出来,看具体内容。

总结:示例只是对选择文件前的表单进行校验,根据自己需求可以实现不同的文件选择前的处理。希望能给大家一个参考,也希望大家多多支持我们。

原文链接:https://blog.csdn.net/qq_34940644/article/details/89512934