Office.js任务窗口UI不响应鼠标显示等待光标,而数据在Excel中打印

时间:2016-09-14 00:14:58

标签: office-js

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

Range.values = [formatted data for excel range]

我将值放在5000的块中,并且当调用上下文同步时,IE或Desktop excel变得如此敏感以至于无法使用它。

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

1 个答案:

答案 0 :(得分:3)

在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是一个非常好的数字,所以我们使用它...但我很想听听你对此的体验,我们当然可以相应地调整这个数字。