Vue3+elementplus动态表格table实现

发布于:2024-03-15 ⋅ 阅读:(155) ⋅ 点赞:(0)

Vue3+elementplus动态表格table实现

描述:使用el-table的时候,根据需求,能够实现由字段个数动态增加表格列,表格行数固定为3行。

实现效果

在这里插入图片描述

在这里插入图片描述

实现代码

// 行数由tableData2控制,列数由tableData字段动态控制(for循环)
<el-table
      v-if="statement_flag"
      border
      :data="tableData2"
      style="margin-bottom: 40px"
    >
      <el-table-column
        label="界面名称"
        min-width="150"
        align="center"
        prop=""
      >
        <template #default="scope">
          {{ ViewTxt[scope.$index] }}
        </template>
      </el-table-column>
      <el-table-column
        label="用户"
        align="center"
        min-width="150"
        prop=""
      >
        <template #default="scope">
          ALL
          <!-- {{ checkboxGroup2 }}  -->
        </template>
      </el-table-column>

      <el-table-column
        v-for="(item,index) in tableData"
        :key="index"
        align="center"
        min-width="150"
        :label="item.name"
      >
      </el-table-column>
</el-table>



// 行数由tableData2控制,所以只需要固定为3行即可
<script setup>
if (tableData.value.length >= 3) {
    tableData2.value = tableData.value.slice(0, 3)
  } else {
    tableData2.value[0].name = tableData.value.name
    tableData2.value[0].action = tableData.value.action
    while (tableData2.value.length < 3) {
      tableData2.value.push({})
    }
  }
</script>

总结:如果需要控制行数,并且动态加载列数,故需要两个变量进行设置,这里采用的就是这个思想,能够实现需求效果。

本文含有隐藏内容,请 开通VIP 后查看