vue3 element plus table selection展示数据,默认选中功能方式

 更新时间:2024年07月25日 10:29:53   作者:蜡笔大杺  
这篇文章主要介绍了vue3 element plus table selection展示数据,默认选中功能方式,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教

vue3 element plus table selection展示数据,默认选中

当打开表格数据时,可能会根据后台返回的数据,默认选中符合条件的行

这样我们就用到了el-table-column,设 type 属性为 selection

1.表格的第一行,设置为

 <el-table-column type="selection" width="25" />

2.table上定义ref属性,并且定义这个变量

><script setup lang="ts">
const orgidslistRef = ref<InstanceType<typeof ElTable>>();
<script />

3.在事件中配置一下

  //遍历表格的数据,再遍历需要在表格中反显的数据,两者的id一致
  //创建一个空数组用来存放默认数据
  //allprojectsortids指的是存放表格显示数据的数组,和table绑定的data数据来源一致
  //item我这里是存放条件数组
  //假设:item=[1,2,3],我们需要把allprojectsortids数组中id在item中的行默认选中,即可进行 下面的操作,具体判断操作自行修改.
  const listNew = [];//需要注意的是,这个数组中存放的数据要包含allprojectsortids数组中符合条件行全部的数据,不能只存放id,直接把那一行的数据全部存里面.
async  function edititemcondition(){
 await orgidslistRef.value.clearSelection();//清空选中状态
  allprojectsortids.value.forEach(it => {
    if (item.value.projectsortidslist_ext.indexOf(it.value) > -1) {
      // 把判断出来的默认表格数据push到创建的数组中
      listNew.push(it);
    }
  });


  //方法一 一定设置async  
  // await orgidslistRef.value.clearSelection();//清空选中状态
   //使用for循环方法处理复杂字段 推荐使用
   //orgidslistRef.value定义的ref
   // allprojectsortids.value原表格数据
   // listNew选中的数据
   
  for (let i = 0, i <  listNew.length; i++) {
    orgidslistRef.value.toggleRowSelection(
      allprojectsortids.value.find(item => {
        return listNew[i].value === item.value; // 注意这里寻找的字段要唯一,示例仅参考
      }),
      true
    );
  }


  //方法二
  if (listNew.length > 0) {
    //再遍历数组,将数据放入方法中
    listNew.forEach(row => {
      setTimeout(() => {
        orgidslistRef .value.toggleRowSelection(row, true);
      }, 0);
    });
  }  }

修改选中的行,重新赋值

function multipleOrgidslist_ext(val) {
//val选中行的数据
  console.log("%c搜索", "color:red;font-size:30px", val);
  if (val) {
    item.value.orgidslist_ext = [];
    const temp = [];
    for (let i = 0; i < val.length; i++) {
      temp.push(val[i].value);
    }
    item.value.projectsortidslist_ext= temp;
  }
}
//定义的数组
const allprojectsortids = ref(
[
  {
    date: '2016-05-03',
    id:1,
    name: 'Tom',
    address: 'No. 189, Grove St, Los Angeles',
  },
  {
  id:2,
    date: '2016-05-02',
    name: 'Tom',
    address: 'No. 189, Grove St, Los Angeles',
  },
  {
    id:3,
    date: '2016-05-04',
    name: 'Tom',
    address: 'No. 189, Grove St, Los Angeles',
  },
  {
    id:4,
    date: '2016-05-01',
    name: 'Tom',
    address: 'No. 189, Grove St, Los Angeles',
  },
  {
    id:5,
    date: '2016-05-08',
    name: 'Tom',
    address: 'No. 189, Grove St, Los Angeles',
  },

]
)

结果:

注意:支持树形结构

总结

以上为个人经验,希望能给大家一个参考,也希望大家多多支持脚本之家。

相关文章

  • vue 解决form表单提交但不跳转页面的问题

    vue 解决form表单提交但不跳转页面的问题

    今天小编就为大家分享一篇vue 解决form表单提交但不跳转页面的问题,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧
    2019-10-10
  • vue3使用quill富文本编辑器保姆级教程(附踩坑解决)

    vue3使用quill富文本编辑器保姆级教程(附踩坑解决)

    这篇文章主要给大家介绍了关于vue3使用quill富文本编辑器保姆级教程的相关资料,在许多网站和应用程序中富文本编辑器是一种常见的工具,它使用户能够以直观的方式创建和编辑文本内容,需要的朋友可以参考下
    2023-11-11
  • Vue3 中的  shallowReactive 详解

    Vue3 中的  shallowReactive 详解

    本文深入探讨了Vue3中新特性shallowReactive的使用和原理,shallowReactive是创建浅响应式对象的API,只对对象的第一层属性进行响应式转换,不对嵌套对象处理,有助于性能优化和状态管理,同时也指出了shallowReactive在使用中的注意事项
    2024-10-10
  • vue-cli的index.html中使用环境变量方式

    vue-cli的index.html中使用环境变量方式

    这篇文章主要介绍了vue-cli的index.html中使用环境变量方式,具有很好的参考价值,希望对大家有所帮助。如有错误或未考虑完全的地方,望不吝赐教
    2022-10-10
  • 详解vue中组件参数

    详解vue中组件参数

    这篇文章主要介绍了vue中组件参数,本文通过实例代码给大家介绍的非常详细,具有一定的参考借鉴价值,需要的朋友可以参考下
    2018-07-07
  • vue项目中进行svg组件封装及配置方法步骤

    vue项目中进行svg组件封装及配置方法步骤

    本文主要介绍了vue项目中进行svg组件封装及配置方法步骤,文中通过示例代码介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
    2021-11-11
  • Vue element-UI el-select循环选中的问题

    Vue element-UI el-select循环选中的问题

    这篇文章主要介绍了Vue element-UI el-select循环选中的问题,具有很好的参考价值,希望对大家有所帮助。如有错误或未考虑完全的地方,望不吝赐教
    2022-10-10
  • Vue使用v-model收集各种表单数据、过滤器的示例详解

    Vue使用v-model收集各种表单数据、过滤器的示例详解

    这篇文章主要介绍了Vue使用v-model收集各种表单数据、过滤器的示例,本文通过实例代码给大家介绍的非常详细,感兴趣的朋友跟随小编一起看看吧
    2024-08-08
  • Vue+ElementUI踩坑之动态显示/隐藏表格的列el-table-column问题

    Vue+ElementUI踩坑之动态显示/隐藏表格的列el-table-column问题

    这篇文章主要介绍了Vue+ElementUI踩坑之动态显示/隐藏表格的列el-table-column问题,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教
    2023-11-11
  • Vue数组中出现__ob__:Observer无法取值问题的解决方法

    Vue数组中出现__ob__:Observer无法取值问题的解决方法

    __ob__: Observer这个属性其实是Vue监控变量产生的,下面这篇文章主要给大家介绍了关于Vue数组中出现__ob__: Observer无法取值问题的解决方法,文中通过示例代码介绍的非常详细,需要的朋友可以参考下
    2022-03-03

最新评论