我有一个Office加载项,它是在ASP.NET MVC 4.5之上使用AngularJS(1.4)构建的。我已经在Angular控制器和服务JS文件中实现了很多功能。
最近,我开始尝试使用Office功能区按钮和命令(JS API 1.3)。我想从功能区按钮访问我的Angular文件($ scope或service)中的JavaScript函数。最好的方法是什么?
答案 0 :(得分:2)
正如您可能已经发现的那样,Office JS API 1.3中引入的加载项命令(功能区按钮,菜单项)的设计使每个命令都启动自己的执行上下文并具有自己的全局(窗口)对象。任务窗格中的主加载项应用程序的执行上下文无法直接从这些其他执行上下文中访问。
您可能尝试的一件事是使用本地存储在两个上下文之间传递信息。概述了如何执行此操作Sharing data across windows using localStorage。基本上,您的加载项命令会在localStorage中留下请求操作的消息。您的任务窗格应用程序响应存储事件,读取消息并执行请求的操作。