vue
<el-table :data="tableData"> <el-table-column label="店员数量评级金额"> <template #default="scope"> <el-table-column v-for="(item,index) in scope.row.fullTimeNCs" :key="item" :label="item.label"> {{ item.price }} </el-table-column> </template> </el-table-column></el-table>
script
<script setup>import { ref } from "vue";这是完整的表格数据,其中fullTimeNCs的长度是动态的`const tableData = ref([ { area: "NKA_门店1", fullTimeNCs: [{label:'1个店员评级金额',price:"100"}, {label:'2个店员评级金额',price:"400"},{label:'3个店员评级金额',price: "600"}], }, { area: "NKA_门店12", fullTimeNCs: [{label:'1个店员评级金额',price:"100"}, {label:'2个店员评级金额',price:"400"},{label:'3个店员评级金额',price: "600"}], }, { area: "NKA_门店13", fullTimeNCs: [{label:'1个店员评级金额',price:"100"}, {label:'2个店员评级金额',price:"400"},{label:'3个店员评级金额',price: "600"}], },]);`</script>
期望结果
店员数量是动态的,但是在这里无法循环渲染el-table-column多级表头
<el-table :data="tableInfo.tableData"> <el-table-column label="地区" prop="area"></el-table-column> <el-table-column label="店员数量评级金额"> <el-table-column v-for="item in tableInfo.headerList" :key="item.key" :label="item.label" :prop="item.key"> </el-table-column> </el-table-column></el-table>
数据需要自己转下 或者后端就返回那种格式
tableInfo(){ let tableData= [ { area: "NKA_门店1", fullTimeNCs: [ { label: "1个店员评级金额", price: "100" }, { label: "2个店员评级金额", price: "400" }, { label: "3个店员评级金额", price: "600" } ] }, { area: "NKA_门店12", fullTimeNCs: [ { label: "1个店员评级金额", price: "100" }, { label: "2个店员评级金额", price: "400" }, { label: "3个店员评级金额", price: "600" } ] }, { area: "NKA_门店13", fullTimeNCs: [ { label: "1个店员评级金额", price: "100" }, { label: "2个店员评级金额", price: "400" }, { label: "3个店员评级金额", price: "600" } ] } ] let headerList=[] tableData.forEach((item)=>{ item.fullTimeNCs.forEach((citem,cindex)=>{ let key=`customFiled${cindex+1}` item[key]=citem.price; let find=headerList.find(i=>i.label==citem.label) if(!find){ headerList.push({ key, label:citem.label }) } }) }) return { headerList, tableData }}
只需要用原生的html实现即可, 红框中的内容是动态展示的,而且每次也只会有一条数据
vue3实现这样的表格,中间的动态数据该如何获取,数据库的列名是表格的行
如何使用element-plus实现两个表头的表格? 其实这应该是两个表格合在一起了,第一个表格只有一行数据。 我现在的实现是用了两个el-table来实现,还有其他实现方式吗?能只用一个el-table来实现吗? elementplus playground
系统使用了element-plus按需载入的方式 我需要在一个组件内动态加载某些组件 这个loader方法一直无法正确渲染相应组件,例如type传入“ELInput”时系统会报个警告 尝试过import('element-plus/lib/components/ElInput')这种写法页不行,报错:[plugin:vite:import-analysis] No known conditions
其实是想要实现这样的样式: el-select 多选,选中的内容以逗号分割,最小宽度80px;最大宽度300px;超出最大宽度显示省略号 就是大概是下面这样,一行显示已经处理了,但是最小80px,然后input框的宽度根据选中的项的字符串内容变大,最大300px,超过显示省略号还没想好如何处理,有无大佬给个思路。 看了网上有说可以用 el-select 的prefix,结合计算属性去实现,但是pr
问题: 输入内容,失去焦点,应该提示【请输入正确的身份证号码】,也就是走rules的第二条规则partner,而不是走第一条require。 示例代码如下: 在线demo: el-form表单示例 - JS Bin