Office JS - 有没有办法验证清单文件中提到的功能是否已加载?
Office JS - is there a way to verify if the functions mentioned in the manifest file are loaded?
我呈现函数文件 html 的网络应用程序有一个网络过滤器,因此如果登录不成功,文件将不会呈现。现在,当我加载加载项时,所有按钮都会出现,但绑定到这些按钮的功能不会呈现。单击这些按钮会显示 "Excel is working on so & so (button name)" - 并且会永远保留。有没有办法了解那里发生了什么?还有,如果有异常,能不能一路抛回去?
"Excel is working on…" 出现在您的函数被调用的时间和 completed()
回调在您的函数接收到的事件上被调用的时间之间。如果您看到此通知停留时间过长,则表明您的函数正在被调用,但是:
- 您的函数在完成时未调用
event.completed()
,或者
- 您的函数在调用
event.completed()
回调之前抛出异常。
对于以这种方式调用的函数,F12 Developer Tools 不会有太大帮助。执行函数的上下文根本没有足够长的时间来附加它。
我建议使用以下解决方案之一来解决此问题:
实现一个 任务窗格,其中包含一个按钮,可以触发您要测试的功能。启动该任务窗格,将 F12 开发人员工具附加到它,然后单击按钮。在这里,您可以监控控制台是否存在未捕获的异常,将 debugger
语句添加到您的代码中以进行调试等。
或... 将函数的内容包装在 try
/catch
块中,并在 catch
块,将工作表中单元格的值设置为捕获的错误消息。
选项 2 可能会更快地为您提供所需的内容,但选项 1 会让您为以后对其他内容进行更彻底的调试做好准备。
希望对您有所帮助!
我呈现函数文件 html 的网络应用程序有一个网络过滤器,因此如果登录不成功,文件将不会呈现。现在,当我加载加载项时,所有按钮都会出现,但绑定到这些按钮的功能不会呈现。单击这些按钮会显示 "Excel is working on so & so (button name)" - 并且会永远保留。有没有办法了解那里发生了什么?还有,如果有异常,能不能一路抛回去?
"Excel is working on…" 出现在您的函数被调用的时间和 completed()
回调在您的函数接收到的事件上被调用的时间之间。如果您看到此通知停留时间过长,则表明您的函数正在被调用,但是:
- 您的函数在完成时未调用
event.completed()
,或者 - 您的函数在调用
event.completed()
回调之前抛出异常。
对于以这种方式调用的函数,F12 Developer Tools 不会有太大帮助。执行函数的上下文根本没有足够长的时间来附加它。
我建议使用以下解决方案之一来解决此问题:
实现一个 任务窗格,其中包含一个按钮,可以触发您要测试的功能。启动该任务窗格,将 F12 开发人员工具附加到它,然后单击按钮。在这里,您可以监控控制台是否存在未捕获的异常,将
debugger
语句添加到您的代码中以进行调试等。或... 将函数的内容包装在
try
/catch
块中,并在catch
块,将工作表中单元格的值设置为捕获的错误消息。
选项 2 可能会更快地为您提供所需的内容,但选项 1 会让您为以后对其他内容进行更彻底的调试做好准备。
希望对您有所帮助!