找回密码
 立即注册

QQ登录

只需一步,快速开始

我想吃麻薯
初级会员   /  发表于:2024-7-4 15:07:01
11#
Joestar.Xu 发表于 2024-7-3 17:30
您好,你新提出的这个问题我本地应该如何复现呢?columnList是什么?

只需要把处于上方的表格,.bindingCloumns(columnList) ,columnList使用上面的代码重新生成列就能复现
回复 使用道具 举报
Joestar.XuSpreadJS 开发认证
超级版主   /  发表于:2024-7-5 09:37:44
12#
您好,我这边在尝试复现您问题的时候遇到了以下报错:

image.png573159179.png

请问sRow和sCol的定义是什么呢?
回复 使用道具 举报
我想吃麻薯
初级会员   /  发表于:2024-7-5 09:50:29
13#
Joestar.Xu 发表于 2024-7-5 09:37
您好,我这边在尝试复现您问题的时候遇到了以下报错:

不好意思这个漏了,是上方表格的起始行和列
  1. const tableRange = targetTable.range()
  2.   const sRow = tableRange.row
  3.   const sCol = tableRange.col
复制代码
回复 使用道具 举报
Joestar.XuSpreadJS 开发认证
超级版主   /  发表于:2024-7-5 17:44:16
14#
好的,我这边使用您描述的相关代码测试了一下,但是并没有复现出您的问题:

image.png953110351.png

以下是我的测试代码:

image.png902323303.png
回复 使用道具 举报
我想吃麻薯
初级会员   /  发表于:2024-7-5 17:53:00
15#
Joestar.Xu 发表于 2024-7-5 17:44
好的,我这边使用您描述的相关代码测试了一下,但是并没有复现出您的问题:



好的我再试下
回复 使用道具 举报
Joestar.XuSpreadJS 开发认证
超级版主   /  发表于:2024-7-8 10:16:59
16#
好的,也可能是其他的代码影响了这一块的逻辑,最好提供一个可以复现您问题的Demo,这边结合实际代码帮您调研看看。
回复 使用道具 举报
我想吃麻薯
初级会员   /  发表于:2024-7-9 18:27:47
17#
Joestar.Xu 发表于 2024-7-8 10:16
好的,也可能是其他的代码影响了这一块的逻辑,最好提供一个可以复现您问题的Demo,这边结合实际代码帮您调 ...

你好,麻烦您那边把您的代码最后加上如下这段代码后,重复点击您绑定的#button1,试试是否能复现
  1. const newDataSource = {
  2.     [`${tableName}Data`]: [
  3.       { No: '123123', CompanyName: '1234234', Country: '2324', Currency: '123123', fs01: '11', fi01: '11'},
  4.       { No: '123123', CompanyName: '1234234', Country: '2324', Currency: '123123', fs01: '222', fi01: '22'},
  5.       { No: '123123', CompanyName: '1234234', Country: '2324', Currency: '123123', fs01: '333', fi01: '33'}
  6.     ]
  7.   }
  8.   const source = new GC.Spread.Sheets.Bindings.CellBindingSource(newDataSource)
  9.   sheet.setDataSource(source)
复制代码
回复 使用道具 举报
Joestar.XuSpreadJS 开发认证
超级版主   /  发表于:2024-7-10 09:19:45
18#
您好,您提供的代码我无法运行,出现了以下报错:

image.png716275329.png

image.png224356993.png
回复 使用道具 举报
我想吃麻薯
初级会员   /  发表于:2024-7-10 09:37:54
19#
Joestar.Xu 发表于 2024-7-10 09:19
您好,您提供的代码我无法运行,出现了以下报错:

实在不好意思,请复制这段代码
  1. targetTable.allowAutoExpand(true)
  2.   targetTable.autoGenerateColumns(false)
  3.   const tableName = targetTable.name()
  4.   targetTable.bindingPath(`${tableName}Data`)
  5.   const newDataSource = {
  6.     [`${tableName}Data`]: [
  7.       { No: '123123', CompanyName: '1234234', Country: '2324', Currency: '123123', fs01: '11', fi01: '11'},
  8.       { No: '123123', CompanyName: '1234234', Country: '2324', Currency: '123123', fs01: '222', fi01: '22'},
  9.       { No: '123123', CompanyName: '1234234', Country: '2324', Currency: '123123', fs01: '333', fi01: '33'}
  10.     ]
  11.   }
  12.   const source = new GC.Spread.Sheets.Bindings.CellBindingSource(newDataSource)
  13.   sheet.setDataSource(source)
复制代码
回复 使用道具 举报
Joestar.XuSpreadJS 开发认证
超级版主   /  发表于:2024-7-10 17:51:40
20#
您好,我这边使用您提供的代码测试了一下,仍然无法复现出您的问题:

image.png804948730.png

测试代码如下:

  1. document.querySelector("#button1").addEventListener("click", function () {
  2.   readFile(spread, "./temp/demo (1).sjs", () => {
  3.     let sheet = spread.getActiveSheet();
  4.     let targetTable = sheet.tables.all()[0];
  5.     const tableRange = targetTable.range();
  6.     const sRow = tableRange.row;
  7.     const sCol = tableRange.col;
  8.     console.log(targetTable);
  9.     const columns = targetTable.toJSON().columns;
  10.     const columnList = [];
  11.     columns &&
  12.       columns.forEach((col, index) => {
  13.         const tableColumn = new GC.Spread.Sheets.Tables.TableColumn(
  14.           col.id,
  15.           col.name,
  16.           col.name,
  17.           sheet.getFormatter(
  18.             sRow + 1,
  19.             sCol + index,
  20.             GC.Spread.Sheets.SheetArea.viewport
  21.           )
  22.         );
  23.         columnList.push(tableColumn);
  24.       });
  25.     targetTable.bindColumns(columnList);

  26.     targetTable.allowAutoExpand(true);
  27.     targetTable.autoGenerateColumns(false);
  28.     const tableName = targetTable.name();
  29.     targetTable.bindingPath(`${tableName}Data`);
  30.     const newDataSource = {
  31.       [`${tableName}Data`]: [
  32.         {
  33.           No: "123123",
  34.           CompanyName: "1234234",
  35.           Country: "2324",
  36.           Currency: "123123",
  37.           fs01: "11",
  38.           fi01: "11",
  39.         },
  40.         {
  41.           No: "123123",
  42.           CompanyName: "1234234",
  43.           Country: "2324",
  44.           Currency: "123123",
  45.           fs01: "222",
  46.           fi01: "22",
  47.         },
  48.         {
  49.           No: "123123",
  50.           CompanyName: "1234234",
  51.           Country: "2324",
  52.           Currency: "123123",
  53.           fs01: "333",
  54.           fi01: "33",
  55.         },
  56.       ],
  57.     };
  58.     const source = new GC.Spread.Sheets.Bindings.CellBindingSource(
  59.       newDataSource
  60.     );
  61.     sheet.setDataSource(source);
  62.   });
  63. });
复制代码
回复 使用道具 举报
您需要登录后才可以回帖 登录 | 立即注册
返回顶部