可拖拽表格保存拖拽顺序,按照拖拽顺序进行下载

可拖拽表格的难点:
(1)拖拽表格行顺序,自动进行保存顺序
解析:要根据表格行顺序进行下载,这就意味着保存与初始化传参需要按照表格拖拽后顺序
(2)下载表格传参是[1,2,3]数字形式,我们保存与初始化是对象数组
解析:这个时候我们可以直接采取给{[1,2,3]}数组包层对象
(3)表格行选择是通过复选框,这个时候我们需要去重,避免传参重复new Set的使用
解析: let selectedNumbers = new Set(); // 使用 Set 来存储唯一的 number 值

  • 通过给el-table元素添加key属性,可以确保在数据发生变化时,Vue会重新渲染el-table组件,从而正确地更新表格的显示。
  • 给el-table添加row-key="id"的作用是为表格的每一行指定一个唯一的key值。这个key值通常是数据源中每一条数据的唯一标识,比如id字段。
ref=“dataTable” 的用法
this.$refs.dataTable.toggleAllSelection() 用于切换所有行的选中状态,如果当前的选中状态是全部选中,则会取消所有行的选中状态;如果当前的选中状态是部分选中或未选中,则会选中所有行。
this.$refs.dataTable.clearSelection() 清空选中的行
this.$refs.dataTable.toggleRowSelection(rowData) 切换某一行的选中状态
this.$refs.dataTable.data 获取 el-table 的数据
this.$refs.dataTable.selection 获取 el-table 的选中行数据
 <div>
        <task-suggest v-model="taskName" @id-select="taskidSel" />
      </div>
  <div style="margin-top:20px">
        <el-table :key="rendertable" ref="dataTable" row-key="id" :data="tableData" border class="draggable-table"
          style="width: 30%" @selection-change="handleSelectionChange">
          <el-table-column :reserve-selection="true" type="selection"> </el-table-column>
          <el-table-column prop="name" label="表名"> </el-table-column>
        </el-table>
      </div>
      ------------------------------------
      import Sortable from 'sortablejs'
       rendertable: "",
       allSelect: [],//选中的表格行形成的数组
      numberArr: [],
           tableData: [
        {
   
          name: "表名1",
          id: 1,//添加id为了方便区分(row-key)
          number: 17//下载的参数
        }
  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值