WPS二次开发之加载项(一):Hello WPS
官方对WPS加载项的解释:
WPS 加载项是一套基于 Web 技术用来扩展 WPS 应用程序的解决方案。每个 WPS 加载项都对应打开了一个网页,并通过调用网页中 JavaScript 方法来完成其功能逻辑。 WPS 加载项打开的网页可以直接与 WPS 应用程序进行交互,同时一个 WPS 加载项中的多个网页形成了一个整体, 相互之间可以进行数据共享。 开发者不必关注浏览器兼容的问题,因为 WPS 加载项的底层是以 Chromium 开源浏览器项目为基础进行的优化扩展。 WPS 加载项具备快速开发、轻量化、跨平台的特性,目前已针对Windows/Linux操作系统进行适配。 WPS 加载项功能特点如下:
想真正知道这所谓的“加载项”到底是是个啥,纸上谈兵不如实践一遍,跟着下面步骤来一发。首先得电脑需要安装wps(废话)、Node.js。
1、管理员权限(如果安装的是wps个人版,不需要管理员权限)启动命令行,通过npm全局安装wpsjs开发工具包: npm install -g wpsjs ,如果之前已经安装了,可以更新下:npm update -g wpsjs 。
建议使用淘宝镜像:npm config set registry https://registry.npm.taobao.org
2、新建一个wps加载项,假设取名为"HelloWps": wpsjs create HelloWps,会出现如下图的几个选项:
3、这里我们选择“电子表格”后,会让你选择前端框架:
4、如果你熟悉vue,选择“Vue”以后,wpsjs会在当前目录创建如下的工程结构
- 提供前端页的的热更新服务,wpsjs工具包检测到网页数据变化时,自动刷新页面。
- 提供wps加载项的在线服务,wpsjs生成的代码示例是一个在线模式,wps客户端程序实际上是通过http服务来请求在线的wps加载项相关代码和资源的。
6、在wps打开新标签页,选择新建空白电子表格,如果出现如下的“wps加载项实例”则表示加载项安装成功了。
- publish模式是通过wpsjs工具包的wpsjs publish命令打包,将生成的文件夹下的所有文件部署到打包时填写服务器地址去。告知用户publish.html地址,业务系统开发商可将publish.html的功能按需整合到自己的页面中,便于做基础环境监测。也可以复用此页面给到用户,用户可自己控制启用和禁用哪些加载项。
- jsplugins.xml模式是通过设置oem.ini配置文件的JSPluginsServer的值为加载项管理文件jsplugins.xml来控制加载项的加载(相当于WPS加载项列表文件),二次打包时,业务开发商需要告知我们JSPluginsServer的配置地址,将其配置到oem.ini文件中,业务开发商再做安装包分发。后续的加载项的控制用,业务开发商可以自由的更改jsplugins.xml文件,实现加载项的新增,修改。
publish模式:
jsplugins.xml模式
- 优点:加载比较平滑,用户首次加载或版本更新后的用户初次访问时间会比离线模式高,且每次都是使用最新的代码
- 缺点:每次执行时,都是去请求服务器上的资源,比较浪费网络资源,并且网络不好时,不能访问。
- 总结:在线模式适合在资源频繁改动,且网络稳定的情况下使用
- 优点:只要name_version等于加载项文件夹的名字,加载项就不会去更新加载项的包,采用本地的加载项包资源,大大的节省网络资源和用户的时间。
- 缺点:初次加载或版本变更时,都会先去下载整个加载项包,并解压,会比较耗费时间
- 总结:离线模式适合资源改动不频繁的情况

低调大师中文资讯倾力打造互联网数据资讯、行业资源、电子商务、移动互联网、网络营销平台。
持续更新报道IT业界、互联网、市场资讯、驱动更新,是最及时权威的产业资讯及硬件资讯报道平台。
转载内容版权归作者及来源网站所有,本站原创内容转载请注明来源。
- 上一篇
HTTP 库 Axios 推送损坏的更新,导致数千个网站瘫痪
Axios 是基于 Promise 的 HTTP 网络请求库,用于浏览器和 Node.js。Axios 体积非常小,提供了一个简单易用的库,具有易于扩展的接口。 近日 Axios发布的 1.1.0 版本更新在推送给用户后,由于包含损坏,导致数千个网站瘫痪。 根据用户提交的 issue,在 Axios v1.1.0 中,他们使用axios.get时出现了错误,会提示TypeError: axios.get is not a function。这导致几乎所有请求都无法成功,因为如果按照预期的行为,axios.get是一个有效的函数。 这名用户还附上了重现问题的方法,使用<script>引入 axio v1.1.0,然后直接引用axios.get()就能复现错误: <script src="https://unpkg.com/axios@1.1.0/dist/axios.min.js"></script> <script> axios.get(...) </script> 注意:此问题没有在v1.0.0 中复现。 从 is...
- 下一篇
给你一本武林秘籍,和KeeWiDB一起登顶高性能
KeeWiDB,骨骼清奇,是万中无一的NoSQL奇才。现将KeeWiDB高性能修炼之路整理至此秘籍,见与你有缘,随KeeWiDB一同登顶吧! 创新性分级存储架构设计,单节点读写能力超过18万QPS,最高可线性堆叠至千万级并发吞吐量,同时兼容Redis协议,访问延迟达到毫秒级,新一代分布式KV存储数据库KeeWiDB在NoSQL江湖中脱颖而出。 由内而外深入探索其成长史,可从三个角度讲起,为并发而生的架构、量身“自”造的引擎以及新老硬件的加持。修炼的过程有点长,且听我娓娓道来。 江湖 · 风云涌动 随着web2.0的快速发展,SNS网站的兴起彻底带火了NoSQL,个性化实时的动态请求带来高并发负载问题、海量用户产生的动态数据带来存储效率问题等都把关系型数据库难得够呛。更别提突然爆火需要的超高吞吐、全球部署需要的超低延迟了。 至此数据库江湖一分为二,SQL是“稳重”的高僧,而NoSQL则是“灵活”的新秀,以“轻”、“快”突出重围。 江湖道法:一生二,二生三,三生万物。 NoSQL数据库领域逐渐演化出四大门派,分别是键值(Key-Value)存储派、文档(Document-Oriented)...
相关文章
文章评论
共有0条评论来说两句吧...
文章二维码
点击排行
推荐阅读
最新文章
- CentOS7设置SWAP分区,小内存服务器的救世主
- Springboot2将连接池hikari替换为druid,体验最强大的数据库连接池
- SpringBoot2编写第一个Controller,响应你的http请求并返回结果
- SpringBoot2整合Thymeleaf,官方推荐html解决方案
- MySQL8.0.19开启GTID主从同步CentOS8
- SpringBoot2全家桶,快速入门学习开发网站教程
- CentOS8安装Docker,最新的服务器搭配容器使用
- CentOS7编译安装Cmake3.16.3,解决mysql等软件编译问题
- Docker快速安装Oracle11G,搭建oracle11g学习环境
- Hadoop3单机部署,实现最简伪集群