欢迎来到尧图网

客户服务 关于我们

您的位置:首页 > 汽车 > 维修 > elementUI根据列表id进行列合并@莫成尘

elementUI根据列表id进行列合并@莫成尘

2025/5/11 0:17:10 来源:https://blog.csdn.net/weixin_47821281/article/details/141884626  浏览:    关键词:elementUI根据列表id进行列合并@莫成尘

本文章提供了elementUI根据列表id进行列合并的demo,效果如图(可直接复制代码粘贴)

表格合并

<template><div id="app"><el-table border :data="tableList" style="width: 100%" :span-method="objectSpanMethod"><el-table-columntype="selection"width="55"></el-table-column><el-table-column prop="id" label="ID" width="180"></el-table-column><el-table-column prop="name" label="姓名" width="180"></el-table-column><el-table-column prop="type" label="后缀"></el-table-column><el-table-column prop="about" label="地址"></el-table-column><el-table-column prop="dec" label="第一联想"></el-table-column></el-table></div>
</template><script>export default {name: 'App',components: {},data() {return {tableList: [{ id: 10010, name: '小日', type: '子', dec: '小男孩来过这个地方', about: '广岛' },{ id: 10010, name: '小日', type: '子', dec: '胖子来过这个地方', about: '长崎' },{ id: 10010, name: '小日', type: '子', dec: '李梅在这里抽过yan', about: '东京' },{ id: 10010, name: '小日', type: '子', dec: '这是一个地震多发的地方', about: '大板' },{ id: 21121, name: '印度', type: '斯坦', dec: '干净又卫生的超级大国', about: '德里' },{ id: 21121, name: '印度', type: '斯坦', dec: '新德里是首都', about: '新德里' },{ id: 21121, name: '印度', type: '斯坦', dec: '这是提前选好的下一个首都', about: '新新德里' },{ id: 21121, name: '印度', type: '斯坦', dec: '没办法的话这是下下个首都', about: '新新新德里' },]}},methods:{//表格合并objectSpanMethod({ row, column, rowIndex, columnIndex }) {console.log(row,column)if ( //if条件判断的是合并那一竖列columnIndex == 0 ||columnIndex == 1 ||columnIndex == 2 ||columnIndex == 3) {const _row = this.flitterData2(this.tableList).one[rowIndex];const _col = _row > 0 ? 1 : 0;return {rowspan: _row,colspan: _col,};}},flitterData2(arr) {let spanOneArr = [];let concatOne = 0;arr.forEach((item, index) => {if (index === 0) {spanOneArr.push(1);} else {//name 修改if (item.id === arr[index - 1].id) {//pid就是判断相同的字段//第一列需合并相同内容的判断条件spanOneArr[concatOne] += 1;spanOneArr.push(0);} else {spanOneArr.push(1);concatOne = index;}}});return {one: spanOneArr,};},}
}
</script><style>
#app {font-family: Avenir, Helvetica, Arial, sans-serif;-webkit-font-smoothing: antialiased;-moz-osx-font-smoothing: grayscale;text-align: center;color: #2c3e50;margin-top: 60px;
}
</style>

版权声明:

本网仅为发布的内容提供存储空间,不对发表、转载的内容提供任何形式的保证。凡本网注明“来源:XXX网络”的作品,均转载自其它媒体,著作权归作者所有,商业转载请联系作者获得授权,非商业转载请注明出处。

我们尊重并感谢每一位作者,均已注明文章来源和作者。如因作品内容、版权或其它问题,请及时与我们联系,联系邮箱:809451989@qq.com,投稿邮箱:809451989@qq.com

热搜词