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


Posted in Javascript onAugust 07, 2020

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进行了二次封装。

组件使用:

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

组件定义:

<template>
 <el-upload
  class="upload-demo"
  ref="fileRefs"
  :action="action"
  :show-file-list="false"
  :accept="acctype"
  :limit="limit"
  :http-request="uploadFileRes"
  :before-upload="beforeAvatarUpload"
  >
  <el-button :loading="uploadLoading" type="primary" >导入</el-button>
 </el-upload>
</template>

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

// 按钮-导入
  onImport() {
   // 可以先进行适合自己需求的操作,完成后再执行

this.$refs['importFile'].$refs['fileRefs'].$refs['upload-inner'].handleClick()触发选择文件
   this.$refs.searchForm.validate((valid) => {
    if (valid) {
     this.$refs['importFile'].$refs['fileRefs'].$refs['upload-inner'].handleClick()
    }
   })
  },

3、解析:

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

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

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

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

Javascript 相关文章推荐
JavaScript 版本自动生成文章摘要
Jul 23 Javascript
ASP Json Parser修正版
Dec 06 Javascript
jQuery不间断滚动效果(模拟百度新闻支持文字/图片/垂直滚动)
Feb 05 Javascript
原生JavaScript生成GUID的实现示例
Sep 05 Javascript
javascript模拟map输出与去除重复项的方法
Feb 09 Javascript
解决jquery中动态新增的元素节点无法触发事件问题的两种方法
Oct 30 Javascript
基于JavaScript实现轮播图代码
Jul 14 Javascript
AngularJS ng-style中使用filter
Sep 21 Javascript
js实现页面刷新滚动条位置不变
Nov 27 Javascript
jQuery+ThinkPHP+Ajax实现即时消息提醒功能实例代码
Mar 21 jQuery
JS中实现隐藏部分姓名或者电话号码的代码
Jul 17 Javascript
微信小程序利用云函数获取手机号码
Dec 17 Javascript
vue.js click点击事件获取当前元素对象的操作
Aug 07 #Javascript
Vue跨域请求问题解决方案过程解析
Aug 07 #Javascript
JQuery通过键盘控制键盘按下与松开触发事件
Aug 07 #jQuery
vue递归获取父元素的元素实例
Aug 07 #Javascript
在vue中使用Base64转码的案例
Aug 07 #Javascript
JavaScript代码模拟鼠标自动点击事件示例
Aug 07 #Javascript
使用JavaScript和MQTT开发物联网应用示例解析
Aug 07 #Javascript
You might like
改进的IP计数器
2006/10/09 PHP
php实现将base64格式图片保存在指定目录的方法
2016/10/13 PHP
注释PHP和html混合代码的小技巧(分享)
2016/11/03 PHP
JS实现打开本地文件或文件夹
2021/03/09 Javascript
用Javascript实现锚点(Anchor)间平滑跳转
2009/09/08 Javascript
JS获取计算机mac地址以及IP的实现方法
2014/01/08 Javascript
浅析Bootstrap缩略图组件与警示框组件
2016/04/29 Javascript
基于AngularJS前端云组件最佳实践
2016/10/20 Javascript
微信小程序 wxapp内容组件 icon详细介绍
2016/10/31 Javascript
Json按某个键的值进行排序
2016/12/22 Javascript
Html5+jQuery+CSS制作相册小记录
2016/12/30 Javascript
BackBone及其实例探究_动力节点Java学院整理
2017/07/14 Javascript
详解如何使用nvm管理Node.js多版本
2019/05/06 Javascript
详解微信小程序自定义组件的实现及数据交互
2019/07/22 Javascript
layer父页获取弹出层输入框里面的值方法
2019/09/02 Javascript
用vue写一个日历
2020/11/02 Javascript
两个使用Python脚本操作文件的小示例分享
2015/08/27 Python
python 为什么说eval要慎用
2019/03/26 Python
50行Python代码实现视频中物体颜色识别和跟踪(必须以红色为例)
2019/11/20 Python
解决Python logging模块无法正常输出日志的问题
2020/02/21 Python
Python多个装饰器的调用顺序实例解析
2020/05/22 Python
python调用私有属性的方法总结
2020/07/24 Python
利用Python如何画一颗心、小人发射爱心
2021/02/21 Python
Html5获取高德地图定位天气的方法
2019/12/26 HTML / CSS
经典c++面试题三
2015/07/08 面试题
delegate与普通函数的区别
2014/01/22 面试题
给学校的建议书
2014/03/12 职场文书
《学棋》教后反思
2014/04/14 职场文书
读书月活动方案
2014/05/22 职场文书
2014年最新版离婚协议书范本
2014/11/25 职场文书
给上级领导的感谢信
2015/01/22 职场文书
公司晚宴祝酒词
2015/08/11 职场文书
成功的商业计划书这样写才最靠谱
2019/07/12 职场文书
JS如何使用剪贴板操作Clipboard API
2021/05/17 Javascript
Python实现学生管理系统(面向对象版)
2021/06/24 Python
Android Studio实现简易进制转换计算器
2022/05/20 Java/Android