Vue3+elementplus动态表格table实现

Vue3+elementplus动态表格table实现

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

实现效果

实现代码

js 复制代码
// 行数由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>

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

相关推荐
宿6741 小时前
vue3-包管理器
前端·vue.js
@PHARAOH2 小时前
WHAT - Remix 入门和基本实践:理解两套产物
前端·remix
mayaairi2 小时前
Vue2 生命周期完全指南:从创建到销毁的8个钩子函数
前端·javascript·vue.js
研☆香3 小时前
一个简单的气泡弹窗制作
javascript
xy34533 小时前
axure9.0 如何打造一个计时器(简单版)
前端·ui·html·axure·原型·产品设计
大模型丫丫3 小时前
用 TypeScript、NestJS 和 LangGraph 搭建一个可控的 AI Agent
javascript·人工智能·typescript
IMPYLH3 小时前
HTML 的 <pre> 元素
前端·javascript·html
shmily麻瓜小菜鸡4 小时前
JavaScript / TypeScript 易踩坑知识点 —— 异步编程类
开发语言·javascript·typescript
tsumikistep4 小时前
【前端】Vue + Axios 跨域问题实战:7070 代理转发 8080 + 401 报错分析(黑马外卖)
前端·javascript·vue.js
lichenyang4535 小时前
鸿蒙首页从等高商品 Grid 到双列瀑布流:同一张图也能做出小红书式浏览节奏
前端