您好,您的问题解决了。
实际上问题出在addSpan时,对range的设置错误导致的,
只需要在本次绑定数据前调用一下sheet的reset方法即可。
代码如下:
- function initSpread(spread, data) {
- spread.suspendPaint();
- const sheet = spread.getActiveSheet();
- // 在此处添加一个reset调用。
- sheet.reset();
- const colInfos = [
- {
- name: 'name',
- displayName: '名称',
- size: 100,
- },
- {
- name: 'name',
- displayName: '名称',
- size: 100,
- },
- ];
- sheet.setDataSource(data);
- // 合并
- const merges = addSpanShow(data, ['name'], [0]);
- console.log(data, merges);
- merges.forEach((item) => {
- const { row, col, rowspan, colspan } = item;
- sheet.addSpan(row, col, rowspan, colspan); // 行坐标,列坐标,行数, 列数
- sheet.getCell(row, col).vAlign(GC.Spread.Sheets.VerticalAlign.center); // 垂直居中
- });
复制代码 |