ant-design-vue中table某一列进行合并

ant-design-vue中table某一列进行合并

1、在colums中配置自定义渲染

js 复制代码
{
	title: '区域',
	dataIndex: 'cityName',
	key: 'cityName',
	align: 'center',
	width: 120,
	customCell: (record, rowIndex, column) => {
		return {
			rowSpan: record.rowSpan
		}
	}
},

2、处理请求来的数据

js 复制代码
tableData.dataSource = processTableData(res?.data)
const processTableData = (data) => {
	let result = []
	let i = 0
	while (i < data?.length) {
		const currentItem = data[i]
		let rowSpan = 1
		while (i + rowSpan < data.length && data[i + rowSpan].cityName === currentItem.cityName) {
			rowSpan++
		}
		result.push({
			...currentItem,
			rowSpan
		})
		for (let j = 1; j < rowSpan; j++) {
			result.push({
				...data[i + j],
				rowSpan: 0
			})
		}
		i += rowSpan
	}
	return result
}
相关推荐
脑袋大大的38 分钟前
JavaScript 性能优化实战:减少 DOM 操作引发的重排与重绘
开发语言·javascript·性能优化
速易达网络2 小时前
RuoYi、Vue CLI 和 uni-app 结合构建跨端全家桶方案
javascript·vue.js·低代码
耶啵奶膘2 小时前
uniapp+firstUI——上传视频组件fui-upload-video
前端·javascript·uni-app
JoJo_Way2 小时前
LeetCode三数之和-js题解
javascript·算法·leetcode
视频砖家3 小时前
移动端Html5播放器按钮变小的问题解决方法
前端·javascript·viewport功能
lyj1689973 小时前
vue-i18n+vscode+vue 多语言使用
前端·vue.js·vscode
小白变怪兽4 小时前
一、react18+项目初始化(vite)
前端·react.js
ai小鬼头4 小时前
AIStarter如何快速部署Stable Diffusion?**新手也能轻松上手的AI绘图
前端·后端·github
墨菲安全5 小时前
NPM组件 betsson 等窃取主机敏感信息
前端·npm·node.js·软件供应链安全·主机信息窃取·npm组件投毒