JS开发Wps插件

发布时间 2023-10-16 17:01:34作者: 多见多闻

可以通过web的js调用本地的wps并做指定功能

官方接口文档:https://qn.cache.wpscdn.cn/encs/doc/office_v11/index.htm
开源地址:https://gitee.com/zuiyuewentian/wpsjs_demo.git
WpsDemo:https://gitee.com/zuiyuewentian/wpsjs_demo/tree/master/plugin
 
WPS 加载项是一套基于 Web 技术用来扩展 WPS 应用程序的解决方案。每个 WPS 加载项都对应打开了一个网页,并通过调用网页中JavaScript 方法来完成其功能逻辑。
WPS 加载项打开的网页可以直接与 WPS 应用程序进行交互,同时一个 WPS加载项中的多个网页形成了一个整体, 相互之间可以进行数据共享。 开发者不必关注浏览器兼容的问题,因为 WPS 加载项的底层是以Chromium 开源浏览器项目为基础进行的优化扩展。
WPS加载项具备快速开发、轻量化、跨平台的特性,目前已针对Windows/Linux操作系统进行适配。

WPS 加载项功能特点

完整的功能。可通过多种不同的方法对文档、电子表格和演示文稿进行创作、格式设置和操控;通过鼠标、键盘执行的操作几乎都能通过WPS 加载项完成;可以轻松地执行重复任务,实现自动化; 三种交互方式。 自定义功能区,采用公开的CustomUI标准,快速组织所有功能;任务窗格,展示网页,内容更丰富; Web 对话框,结合事件监听,实现自由交互。
标准化集成。不影响 JavaScript语言特性,网页运行效果和在浏览器中完全一致;WPS 加载项开发文档完整,接口设计符合 JavaScript语法规范,避免不必要的学习成本,缩短开发周期。
 
后端采用python-flask开发 技术采用python+flask,主要目的,
 
从页面调起wps,插件自动化安装,并将文件和相关使用的参数全部传入
监听wps插件上传文件,监听wps传入相关消息和事件 https://gitee.com/zuiyuewentian/wpsjs_demo/tree/master/server
 

插件开发内容

 
集成功能
 
1.按钮功能开发
2.保存到本地
3.隐藏tab项目
4.插件和前端通信
5.插件和后端通信
6.web调用插件打开文件,传递参数
7.通过插件保存文件到服务器
8.插入书签内容
9.监听wps操作事件等
 
常用wpsjs命令 准备开发环境 安装wps 安装Node.js
1.管理员权限(如果安装的是wps个人版,不需要管理员权限)启动命令行,通过npm全局安装wpsjs开发工具包: 安装命令: npm install -g wpsjs, 如果之前已经安装了,可以检查下wpsjs版本,更新wpsjs的命令为:npm update -gwpsjs
2.新建一个wps加载项,假设这个wps加载项取名为"HelloWps"。 输入命令: wpsjs create HelloWps, 会出现如下图的几个选项:
3通过上下方向键可以选择要创建的wps加载项的类型,如果选择“文字”,则创建的加载项会在wps文字程序中加载并运行,同理选择“电子表格”,则会在wps表格中运行,这里假设我们选择的是“文字”,按Enter健确定。
4.选择示例代码的代码风格类型 wpsjs工具包提供了两种不同代码风格的示例,“无”代表示例代码中都是原生的js及html代码,没有集成vue\react等流行的前端框架。
"Vue"代表生成的示例代码集成了Vue相关的脚手架,在实际的项目中选用Vue基于示例代码可能更适合做工程化的开发,感兴趣的同学可以两种都尝试一下。
这里我们选择“无”,按Enter健确认。
确认后wpsjs工具包会在当前目录下生成一个HelloWps的文件夹,我们进入到此文件夹,可以看到HelloWps的相关代码已经生成:
备注:wpsjs工具包为示例代码中有一个package.json文件,这是node工具标准的配置文件,其中有一个依赖包为wps-jsapi,这个依赖包是wps支持的全部接口的TypeScript描述,方便在vscode中敲代码时,提供代码联想功能,由于wps接口会跟随业务需求不断更新,因此当发现代码联想对于有些接口不支持时,通过 npm update --save-dev
wps-jsapi命令定期更新这个包。
 
总结命令
1.创建 wpsjs create
2.加载项目 wpsjs join
3.本地调试 wpsjs debug
4.构建离线版 wpsjs build
5.构建发布版 wpsjs publish

安装完成后

1.先访问publish页面在线安装插件
 
2.访问要操作的页面,点击新建客户端打开文件,会自动调起本地的wps并加载test.docx文件