前言
如今前端开发已经成为了软件开发的重要组成部分,尤其是现代 Web 应用程序开发中非常重要。为了保证开发的效率,开发人员需要使用各种工具来简化和优化开发流程。在本文中我们将重点介绍一个叫做 sp-pnp-provisioning 的 NPM 包,它是 SharePoint PnP JavaScript Core 库中的一个子模块,可简化 SharePoint Web 应用程序的自动化部署。
本文将从以下几个方面进行详细介绍:
- sp-pnp-provisioning 是什么?
- 安装 sp-pnp-provisioning 和其依赖项(前置条件)。
- 如何使用 sp-pnp-provisioning 进行 SharePoint 自动化部署。
- 例子,演示如何使用 sp-pnp-provisioning 进行基础 SharePoint 自动化部署。
什么是 sp-pnp-provisioning?
sp-pnp-provisioning 是一个 NPM 包,它是 SharePoint PnP JavaScript Core 库的一个子模块。该库提供了一组用于执行与 SharePoint 相关的任务的 JavaScript 函数。sp-pnp-provisioning 子模块的主要作用是使用 PnP 整理的 XML 模板文件来创建、更新或删除 SharePoint Web 应用程序中的网站集、子网站、文档库、列表、字段,任务等对象。
安装 sp-pnp-provisioning 和其依赖项(前置条件)
安装该模块需要满足以下前置条件:
- 安装 Node.js
- 安装 npm 包管理器
在满足上述前置条件的基础上,执行以下命令来安装 sp-pnp-provisioning:
npm install sp-pnp-provisioning
如何使用 sp-pnp-provisioning 进行 SharePoint 自动化部署
可以先将我们的 SharePoint 对象定义在一个 XML 模板中,然后使用 sp-pnp-provisioning 来解析并创建这些对象。这些模板可以是手写的,也可以使用 SP Designer 2013 或 2016 创建。下面是一些基本的模板示例:
创建一个新网站
-- -------------------- ---- ------- ----- ------------- ---------------- -- ----------------- ------------------------------------------------------------------------- ----------------- ------------ ----------------- ------------ ------------------------- ------------ ------------------------- ------------------ ----------- ----------------- ------------- ----- ------------------------- ------------------ ---------------------- --------------------- --------------- ------------- ------------------------------------------- --------------------- ------------------------------- ------------- -------------------------------------------- ------------------------------------- ---------------- -------------- ------------- --------------- ----------------------- ---------------------- --------------- ------------------------------------------- -------------- --------------- ------------------- ------------ -------------------
更新一个网站
-- -------------------- ---- ------- ----- ------------- ---------------- -- ----------------- ------------------------------------------------------------------------- ------------------ ------------ ----------------------------------- ------------------- ----------------- ------------ ----------------------------------- ------------------ -------------------
删除一个网站
-- -------------------- ---- ------- ----- ------------- ---------------- -- ----------------- ------------------------------------------------------------------------- ----------------- ------------------ ----------------------------------------- ------------------ ----------- --------------- ------------- ----------------------- ------------ -------------------
部署模板
使用 sp-pnp-provisioning 部署模板的一般流程如下:
- 读取 XML 文件
- 准备要分配和删除的 SharePoint 对象和属性。
- 应用模板。
-- -------------------- ---- ------- ----- ------------ - ------------------------------- ----- - ---- -- - - ------------------- --- - --- ---------- -- ----- --- - --- ----------------------------------- ---------- ------------ ---------------- --- --- - -- --- -- -- ----- ------------ - ------------------------- ----- ----------- - ----------------------------- - --------- ------ --- --- - ---- -- ------------ ---------------------------- ---------------- -- - ---------------------- ------------------------- ------------ -- -------------- -- - ------------------- ---
示例代码
-- -------------------- ---- ------- ----- ------------ - ------------------------------- ----- - ---- -- - - ------------------- ----- -- - -------------- -- --- ---------- ----- --- - --- ----------------------------------- ---------- ------------ ---------------- --- -- -- --- -- ----- ------------ - ------------------------- ----- ----------- - ----------------------------- - --------- ------ --- -- ---- ------------ ---------------------------- ---------------- -- - ---------------------- ------------------------- ------------ -- -------------- -- - ------------------- ---
结论
sp-pnp-provisioning NPM 可以大幅度优化开发人员对于 SharePoint Web 应用程序自动化部署的工作。它提供了一种快捷高效的方式,允许我们使用 XML 模板来创建、更新或删除 SharePoint Web 应用程序中的网站集、子网站、文档库、列表、字段,任务等对象。上述内容仅为简单的介绍,开发人员可以根据自己的实际需求来应用该 NPM 包。
来源:JavaScript中文网 ,转载请注明来源 https://www.javascriptcn.com/post/60055b0481e8991b448d8ab4