Office.js Excel 中的绑定管理

Office.js Binding Management in Excel

我是否应该对在我的加载项中创建的单元格绑定执行任何类型的发布?绑定是否在会话之后持续存在?那么,如果用户通过单击加载项右上角的 'x' 关闭加载项,然后重新打开加载项,那些以前的绑定是否仍然存在并触发它们各自的处理程序?谢谢!

绑定以不可见的方式保留在工作簿中。关闭任务窗格不会删除它们。但是,当您的任务窗格再次启动时,绑定事件不会触发它们的处理程序,除非您首先再次调用 Binding.addHandlerAsync()(文档:https://dev.office.com/reference/add-ins/shared/binding.addhandlerasync)。

因此,无论何时加载加载项,您都应检查现有绑定并向其添加适当的事件处理程序。

当您不再需要绑定时,您应该将其删除以优化性能:调用 Binding.delete() 方法(文档:https://dev.office.com/reference/add-ins/excel/binding#delete). If you still want to save the binding but you also want to stop receiving event notifications during a session, you can instead remove the handler with Binding.removeHandlerAsync() (docs: https://dev.office.com/reference/add-ins/shared/binding.removehandlerasync

-Michael(Office 加载项项目经理)