el-table 展开行 type="expand" 刷新表格时,保留当前展开行

一、开启展开行

通过设置 type="expand" 和 Scoped slot 可以开启展开行功能,el-table-column 的模板会被渲染成为展开行的内容,展开行可访问的属性与使用自定义列模板时的 Scoped slot 相同。

这步操作可以直接参考 ElementUI 官方示例

二、控制展开行

1、在table上添加

**row-key**:行数据的 Key,用来优化 Table 的渲染;在使用 reserve-selection 功能与显示树形数据时,该属性是必填的。类型为 String 时,支持多层访问:user.info.id,但不支持 user.info[0].id,此种情况请使用 Function

**expand-row-keys**:可以通过该属性设置 Table 目前的展开行,需要设置 row-key 属性才能使用,该属性为展开行的 keys 数组。

ruby 复制代码
<el-table        :data="tableList"        :row-key="getRowKeys"        :expand-row-keys="expands"      >
</el-table>

2、初始化参数

javascript 复制代码
 data() {    return {             expands: [], //要展开的行,数值的元素是row的key值
   }
}

3、在方法中使用

javascript 复制代码
methods: {     // 获取row的key值    getRowKeys(row) {      return row.planId;    },

   // 在指定的回调方法中进行当前行赋值
   handleSave(){
//this.currentID代表,刷新表格接口前,展开行的id
      this.expands.push(this.currentID);   }}
相关推荐
White graces9 分钟前
正则表达式效验邮箱格式, 手机号格式, 密码长度
前端·spring boot·spring·正则表达式·java-ee·maven·intellij-idea
庸俗今天不摸鱼10 分钟前
Canvas进阶-4、边界检测(流光,鼠标拖尾)
开发语言·前端·javascript·计算机外设
bubusa~>_<34 分钟前
解决npm install 出现error,比如:ERR_SSL_CIPHER_OPERATION_FAILED
前端·npm·node.js
流烟默1 小时前
vue和微信小程序处理markdown格式数据
前端·vue.js·微信小程序
梨落秋溪、1 小时前
输入框元素覆盖冲突
java·服务器·前端
菲力蒲LY2 小时前
vue 手写分页
前端·javascript·vue.js
天下皆白_唯我独黑2 小时前
npm 安装扩展遇到证书失效解决方案
前端·npm·node.js
~欸嘿2 小时前
Could not download npm for node v14.21.3(nvm无法下载节点v14.21.3的npm)
前端·npm·node.js
化作繁星3 小时前
React 高阶组件的优缺点
前端·javascript·react.js
zpjing~.~3 小时前
vue 父组件和子组件中v-model和props的使用和区别
前端·javascript·vue.js