Office.js 任务窗格 UI 在 excel 中打印数据时没有响应鼠标显示等待光标

Office.js Taskpane UI is not responsive mouse shows waiting cursor while data is printed in excel

我正在使用 office.js 开发一个 excel office 插件,我从后端服务器获取大量数据,我想在 excel 上显示这些数据。我用

Range.values = [formatted data for excel range]

我将这些值放在 5000 块中,当调用上下文同步时,IE 或桌面 excel 变得如此敏感以至于无法使用。

使用 Range.values 放置的数据点的最小数量是多少,以便 UI 响应。

在 ExcelApi 1.3(目前处于测试阶段,但应该会在接下来的几周内 "prod"),我们添加了一个特殊的帮助程序,它将值分成更小的子集并设置它们个别地,以防止 Excel 变得无响应。

您可以尝试使用 https://appsforoffice.microsoft.com/lib/beta/hosted/Office.js

根据您的时间表(这是针对您已经发布的内容,还是针对您仍在开发的内容),您可能只是等待 Beta 版转移到 Prod,这样您就可以使用 Beta CDN目前的发展。只需确保您使用的是 Excel 的最新(或至少最近)月度分支。请注意,目前 Excel 会将 isSetSupported('ExcelApi', 1.3) 报告为 false,因为它在技术上是 "beta"。但下个月的发布(无论何时发生)都会将其设置为 true,届时它将正式上线,我们会将其提升到产品 CDN 中。

如果等不及,可以实现自己的分块机制。请参阅 https://appsforoffice.microsoft.com/lib/beta/hosted/excel-win32-16.01.debug.js,并在其中搜索 setRangePropertiesInBulk。在我们的实验中,我们发现 ~1,500 是一个非常好的数字,所以我们使用它......但我很想听听您对此的体验,我们当然可以相应地调整该数字。