Office js Excel中的Office.js绑定管理

Office js Excel中的Office.js绑定管理,office-js,Office Js,我是否应该对外接程序中生成的单元格绑定进行任何形式的发布?绑定是否在会话之后仍然存在?因此,如果用户通过单击外接程序右上角的“x”关闭外接程序,然后重新打开外接程序,那么以前的绑定是否仍然存在并触发各自的处理程序?谢谢 绑定以不可见的方式保留在工作簿中。关闭任务窗格不会删除它们。但是,当任务窗格再次启动时,绑定事件不会触发其处理程序,除非您首先再次调用Binding.addHandlerAsync()(文档:) 因此,无论何时加载外接程序,都应该检查现有绑定并向其添加适当的事件处理程序 当您不再

我是否应该对外接程序中生成的单元格绑定进行任何形式的发布?绑定是否在会话之后仍然存在?因此,如果用户通过单击外接程序右上角的“x”关闭外接程序,然后重新打开外接程序,那么以前的绑定是否仍然存在并触发各自的处理程序?谢谢

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

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

当您不再需要绑定时,应该删除它以优化性能:调用binding.delete()方法(docs:)。如果仍要保存绑定,但也希望在会话期间停止接收事件通知,则可以使用binding.removeHandlerAsync()(docs:)删除处理程序


-Michael(Office外接程序的程序管理器)

如果我不希望这些绑定在会话之间持续存在,我是否需要在新会话开始时释放这些绑定,以避免重叠绑定/冲突和潜在的内存泄漏/内存过载?或者这是不会发生的事情,我不需要担心吗?是的,有一些清理说明。我将更新上面的答案,请稍候…更新,抱歉-偏离方向:)