SharePoint 加载项模型中的自定义操作
摘要
在新 SharePoint 外接程序模型中修改 SharePoint 的列表项菜单和功能区的方法与使用完全信任代码不同。 在典型的完全信任代码 (FTC)/场解决方案场景中,列表项菜单和功能区修改在 XML(自定义操作)中定义,按功能封装并通过 SharePoint 解决方案进行部署。
在 SharePoint 外接程序模型场景中,使用 SharePoint 客户端对象模型 (CSOM) 或 REST API 创建修改列表项菜单和功能区的自定义操作。 此模式通常称为 远程预配模式。
高级别准则
作为经验法则,我们将提供以下高级别准则,用于创建及部署新 SharePoint 外接程序模型中的自定义操作。
- 自定义操作可用于修改列表项菜单和功能区。
- 无法通过实施自定义操作的外接程序直接使用自定义操作来隐藏菜单项。
- 这是因为 HideCustomAction 元素(MSDN API 文档)不适用于 SharePoint ECMA 客户端对象模型 (CSOM) - UserCustomAction 属性(MSDN API 文档)或 SharePoint/Office 365 REST API - SP.UserCustomActionCollection 对象 (sp.js)(MSDN API 文档)。
- 若需要隐藏菜单项,则必须使用自定义操作将 JavaScript 或自定义的 CSS 嵌入 SharePoint 页面。 在 SharePoint 中嵌入的 JavaScript 或 CSS 将隐藏菜单项。
- 使用 SharePoint 客户端对象模型 (CSOM)、和/或 SharePoint/Office 365 REST API 来实施自定义操作。
入门
以下示例说明了如何向主机 Web 中的网站设置菜单添加自定义操作、如何用自定义操作显示对话框、如何隐藏托管远程外接程序 Web 页面的对话框及如何使用自定义操作来创建列表并设置 Web 的主题。
Provisioning.SiteModifier(O365 PnP 示例)
此处,你可以看到示例中自定义操作添加到“网站设置”的链接。
此处,你可以看到通过“修改网站”链接打开的弹出窗口。
相关链接
- 用户控件和 Web 控件(SharePoint 外接程序方法)
- 指南文章中 https://aka.ms/OfficeDevPnPGuidance
- MSDN 中的引用位于 https://aka.ms/OfficeDevPnPMSDN
- 视频中的 https://aka.ms/OfficeDevPnPVideos
PnP 示例
适用于
- Office 365 多租户 (MT)
- Office 365 专用 (D)
- SharePoint 2013 本地