Requirements 元素
此元素的含义取决于它是在基本清单中使用,还是用作 VersionOverrides> 元素的<子元素,还是作为 Override 元素的子元素使用。
提示
使用此元素之前,请熟悉 指定 Office 主机和 API 要求
在基本清单中
在基本清单 ((即作为 OfficeApp) 的直接子级)中使用时, <Requirements> 元素指定 Office JavaScript API 要求的最低集 (要求集 和/或方法) Office 外接程序需要由 Office 激活。 将不会在 Office 版本和平台 ((如 Windows、Mac、Web 和 iOS 或不支持指定方法和要求集的 iPad) )的任意组合上激活加载项。
加载项类型: 任务窗格,邮件
作为 VersionOverrides 元素的子元素
当用作 VersionOverrides 的子级时,指定 Office 版本和平台 ((如 Windows、Mac、Web 和 iOS 或 iPad) )必须支持的最低 Office JavaScript API 要求集 (要求集和/或方法) ,以使 VersionOverrides> 元素中的<设置替代基本清单设置生效。
请考虑在基本清单中指定要求 A 并在 VersionOverrides> 中指定要求 B 的<加载项。
- 如果平台和 Office 版本不支持 A,则加载项不会激活,Office 不会分析 <清单的 VersionOverrides> 部分。
- 如果同时支持 A 和 B,则会激活加载项,并且 VersionOverrides> 中的所有<标记都会生效。
- 如果 A 受支持,但 B 不受支持,则会激活加载项,并且 VersionOverrides> 中的<某些标记将生效。 具体而言,不重写基本清单元素的 <VersionOverrides> 子元素将生效。 例如, <WebApplicationInfo> 元素或 <EquivalentAddins> 生效。 但是,替代基本清单元素(如 Hosts>)<的 VersionOverrides> 的所有子元素不会生效。< 相反,Office 使用本应被重写的基本清单标记的值。
加载项类型: 任务窗格,邮件
仅在以下 VersionOverrides 架构中有效:
- 任务窗格 1.0
- 邮件 1.0
- 邮件 1.1
有关详细信息,请参阅 仅外接程序清单中的版本替代。
与以下要求集关联:
- 当父 <VersionOverrides> 类型为 Taskpane 1.0 时,AddinCommands 1.1。
- 当父 <VersionOverrides> 类型为 Mail 1.0 时邮箱 1.3。
- 当父 <VersionOverrides> 类型为 Mail 1.1 时邮箱 1.5。
备注
<如果基本清单中的 Requirements 中未指定其他要求,则 Requirements> 元素在 VersionOverrides> 中不起作用。<<> 如果 Office 版本和平台不支持基本清单中的要求,则不会激活加载项,并且 <不会分析 VersionOverrides> 元素。 因此,仅当满足以下两个<条件时,才应在 VersionOverrides 中使用 Requirements> 元素<:>
- 外接程序具有在 VersionOverrides> ((如外接程序命令) )中使用<配置实现的额外功能,并且需要基本清单中 Requirements> 元素中<未指定的方法或要求集。
- 加载项非常有用,应 (激活,但无需额外功能) ,即使平台和 Office 版本的组合不支持额外功能所需的要求也是如此。
提示
不要在 VersionOverrides> 中重复基本清单中的<Requirement 元素。 这样做不起作用,并且可能会误导 VersionOverrides> 中<Requirements> 元素的<用途。
警告
在 VersionOverrides> 中使用<<Requirements> 元素之前,请务必小心,因为在不支持该要求的平台和版本组合上,将不安装任何外接程序命令,即使是那些调用不需要该要求的功能的外接程序命令。 例如,考虑具有两个自定义功能区按钮的加载项。 其中一个调用要求集 ExcelApi 1.4 (及更高版本) 中可用的 Office JavaScript API。 另一个调用仅在 ExcelApi 1.9 (及更高版本中可用的 API) 。 如果在 VersionOverrides> 中<提出了 ExcelApi 1.9 的要求,则当不支持 1.9 时,功能区上不会显示这两个按钮。 在此方案中,更好的策略是使用 运行时检查方法和要求集支持中所述的技术。 第二个按钮调用的代码首先使用 isSetSupported
检查 ExcelApi 1.9 的支持。 如果不支持,代码会向用户显示一条消息,指出加载项的此功能在其 Office 版本中不可用。
注意
在邮件加载项中,VersionOverrides> 1.1 可以<嵌套<在 VersionOverrides> 1.0 中。 Office 将始终使用平台和 Office 版本支持的最高版本 <VersionOverrides> 。
作为 Override 元素的子元素
<Requirements> 元素可以是上级 ExtendedOverrides 元素上下文中的 Override 元素的子元素。
<Override> 元素表示条件,并且可以读取为“If...然后...”陈述。
<如果 Override> 元素的类型为 RequirementTokenOverride (这意味着xsi:type
其父 Token 元素RequirementsToken
的) ,则子 <Requirements> 元素表示条件,并且 Value
属性为结果。 例如,下面的第一个 <替代> 内容为“如果当前平台支持 FeatureOne 版本 1.7,则使用字符串'oldAddinVersion'代替 ${token.requirements}
祖父 <级 ExtendedOverrides> (URL 中的令牌,而不是默认字符串'upgrade') ”。有关详细信息,请参阅 ExtendedOverrides。
<ExtendedOverrides Url="http://contoso.com/addinmetadata/${token.requirements}/extended-manifest-overrides.json">
<Tokens>
<Token Name="requirements" DefaultValue="upgrade" xsi:type="RequirementsToken">
<Override Value="oldAddinVersion">
<Requirements>
<Sets>
<Set Name="FeatureOne" MinVersion="1.7" />
</Sets>
</Requirements>
</Override>
<Override Value="currentAddinVersion">
<Requirements>
<Sets>
<Set Name="FeatureOne" MinVersion="1.8" />
</Sets>
<Methods>
<Method Name="MethodThree" />
</Methods>
</Requirements>
</Override>
</Token>
</Tokens>
</ExtendedOverrides>
外接程序类型:任务窗格
语法
<Requirements>
...
</Requirements>
包含于
可以包含
Requirements<> 元素可以包含以下子元素,具体取决于外接程序类型。
元素 | 内容 | 邮件 | 任务窗格 |
---|---|---|---|
Sets | 是 | 是 | 是 |
方法 | 是 | 否 | 可访问 |
另请参阅
有关要求集的详细信息,请参阅 Office 版本和要求集。