我很难理解,也找不到一个与我想要达到的目标完全相符的例子。它有一个MS带状条图标,单击该图标将显示一个对话框。我玩了一个演示,扔掉了多余的功能,得到了一个Hello,但它是JQuery,我想使用AngularJ,重用一个现有的应用程序。
首先,示例清单似乎都有以下内容:
<DesktopFormFactor>
<FunctionFile resid="functionFile" />这似乎适用于当用户单击带状条上的图标时调用的函数。如果我只是使用一个<script src=>标记来包含这样的函数文件,那么假设我不需要这样做是正确的吗?
我的应用程序只有一个视图,所以在演示中所有的*.js文件都有类似的内容
// The Office initialize function must be run each time a new page is loaded
Office.initialize = function (reason) {我是否正确地认为,在我唯一的看法中,我只需要有这样的呼叫?
对不起,如果这看起来很基本,但是所有的演示和文档似乎都接近我想要的,但并不完全是这样。假日快乐!
发布于 2018-12-26 12:53:26
使用FunctionFile
FunctionFile指定外接程序通过执行JavaScript函数而不是显示UI的外接程序命令(丝带按钮)公开的操作的源代码文件。外接程序可以决定在任务窗格中显示某些UI,或者在后台执行javascript函数。对于无UI外接程序,您必须指定一个FunctionFile。
在您的例子中,可以忽略FunctionFile。
使用Office.initialize
Office外接程序包括Office.js库,库希望在库完全加载之前,启动代码不会调用任何API。有两种方法可以确保加载库。
示例:
Office.initialize = function () {
// Office is ready
};或
Office.onReady(function(info) {
if (info.host === Office.HostType.Outlook) {
// Based on host, decide what to display.
}
if (info.platform === Office.PlatformType.PC) {
// Make minor UI changes, if required.
}
});在您的情况下,您可以使用初始化/onReady一次。
https://stackoverflow.com/questions/53931674
复制相似问题