Skip to content
本页内容

插件 SDK

插件 SDK 是金山文档开放平台插件框架提供的一个 JavaScript 库,其内部封装了丰富的接口,用于帮助开发者高效快捷的使用开放平台的各项能力,顺利完成插件的各项业务开发。

插件 SDK 能做什么?

作为插件开发者,对SDK的使用将贯穿整个开发周期。一方面,您开发过程中的大部分文档业务,均需要通过 SDK 的相关接口进行实现。另一方面,SDK 也是您的插件与 WebOffice 组件或容器进行沟通的唯一桥梁。

SDK 提供的能力分为三个部分:

插件容器控制相关

插件的宿主为 WebOffice 组件,运行和展示则是通过独立的 iframe 容器。我们在 SDK 中封装了对该容器进行控制的相关接口,主要包括容器大小设置、容器标题设置、容器关闭以及关闭或隐藏事件的监听。您可以在引入 SDK 后,在插件内动态的更新容器相关的信息。

插件基础信息相关

我们在前文中已经对创建插件进行了相关介绍,那么我们在开发者后台创建的插件,与当前正在运行的插件,他们之间的信息是如何进行关联的呢?事实上,我们在您启动插件的那一刻,便已经将相关信息预置到插件内了,您可以通过 SDK 中封装的接口轻松的对这些信息进行获取。比如用于授权和免登的授权码获取、用于识别身份的用户信息获取、宿主相关的文档基础信息获取等。

文档交互能力相关

在介绍插件的上架要求时,明确了您的插件必须围绕文档进行开发。这是您插件开发的基石,也是开发过程中的重点。既然要围绕文档,所以 SDK 内部封装了一套完善的文档交互接口,开发者可以使用到自定义界面显示、获取页面状态、监听事件等功能。同时,也可以直接调用接口来操作文档本身,您可以结合自身的业务,灵活使用这些接口,完成插件的开发。

注意

关于插件 SDK 提供的文档交互能力与开发平台的WebOffice SDK提供的能力,两者本质上均是调用的 Office 内核提供的文档处理接口,只是为了针对不同场景,单独做的相应的开发工具包。所以无论是 API 设计,还是各项说明和示例文档,两者基本是一致的。

如何引入插件 SDK?

引入之前,您需要先进行 SDK 的下载addon-sdk-0.1.26.zip

下载完成后解压到您的插件目录,然后在您的插件内通过 script 标签进行引入。sdk 挂载的全局变量为jssdk,您可以获取到该实例进行相关接口的调用。

更详细的 sdk 接口文档和使用示例,请参考后续的文档。

<!-- 插件 index.html -->

<!DOCTYPE html>
<html lang="en">
  <head>
    <meta charset="UTF-8" />
    <meta name="viewport" content="width=device-width, initial-scale=1.0" />
    <title>插件SDK</title>
    <script src="./path/to/addon-SDK-0.1.4.umd.js"></script>
  </head>
  <body>
    <div id="plugin-app"></div>
    <script>
      const { api, sys } = jssdk
    </script>
  </body>
</html>