使用清单的扩展重写
当外接程序使用仅 XML 格式的外接程序清单时,Office 外接程序的某些扩展性功能将配置托管在服务器上的 JSON 文件,而不是外接程序的清单。
注意
本文假设你熟悉 Office 外接程序清单及其在外接程序中的角色。如果最近还没有,请阅读 Office 加载项清单。
下表指定了需要扩展重写的扩展性功能,以及指向该功能文档的链接。
功能 | 开发说明 |
---|---|
键盘快捷方式 | 向 Office 加载项添加自定义键盘快捷方式 |
定义 JSON 格式的架构是 扩展清单架构。
提示
本文有点抽象。 请考虑阅读表中的一篇文章,以明确概念。
告诉 Office 在何处查找 JSON 文件
使用清单告知 Office 在何处查找 JSON 文件。 紧靠在 (不在清单中 VersionOverrides> 元素) < 内部,添加 ExtendedOverrides 元素。 将 Url
属性设置为 JSON 文件的完整 URL。 下面是最简单的 ExtendedOverrides<> 元素示例。
...
</VersionOverrides>
<ExtendedOverrides Url="https://contoso.com/addin/extended-overrides.json"></ExtendedOverrides>
</OfficeApp>
下面是非常简单的扩展重写 JSON 文件的示例。 它将键盘快捷方式 CTRL+SHIFT+A 分配给在打开外接程序任务窗格的其他位置 (定义的函数) 。
{
"actions": [
{
"id": "SHOWTASKPANE",
"type": "ExecuteFunction",
"name": "Show task pane for add-in"
}
],
"shortcuts": [
{
"action": "SHOWTASKPANE",
"key": {
"default": "CTRL+SHIFT+A"
}
}
]
}
本地化扩展重写文件
如果外接程序支持多个区域设置,则可以使用 ResourceUrl
ExtendedOverrides> 元素的< 属性将 Office 指向本地化资源文件。 示例如下。
...
</VersionOverrides>
<ExtendedOverrides Url="https://contoso.com/addin/extended-overrides.json"
ResourceUrl="https://contoso.com/addin/my-resources.json">
</ExtendedOverrides>
</OfficeApp>
有关如何创建和使用资源文件的更多详细信息、如何在扩展替代文件中引用其资源,以及此处未讨论的其他选项,请参阅 本地化扩展替代。