MS为Excel引入了JavaScript API。基于该文档,它似乎也支持Excel的桌面版本。
对于c#VSTO addin与Excel通信的方式是通过Marshaling(COM对象)。如果在没有适当清理的情况下获取太多COM对象,则会发生混乱。
所以问题是,js addin是否存在这些陷阱?更具体地说,js API使用COM吗?如果是这样,Windows和Mac版本之间有什么区别吗?我瘦的Mac没有COM的概念(如果我错了就纠正我)
答案 0 :(得分:2)
Office.js API与当前的VBA / VSTO / COM加载项模型不共享任何COM旧版。它是专为跨平台需求而编写的全新代码。在可能的情况下(例如,Excel),绝大多数新代码实际上是在桌面和在线以及iOS和Mac之间共享的。对于其他主机应用程序,代码本身可能不会共享,但我们会尽一切努力确保一致性 - 以及针对特定主机的新API(Word
,Excel
和{{1} } namespaces),一直支持实现API,其中支持可以在所有主机上统一。也就是说,如果API说它是OneNote
的一部分,则可以保证支持1.3(ExcelApi 1.3
)的任何Excel平台(桌面,iOS等)都将拥有该集合中的所有API。