WPS 加载项开发说明

WPS加载项结构

 WPS加载项由自定义功能区和网页两部分组成。自定义功能区只需要一个配置文件,对应WPS加载项目录中的ribbon.xml文件;网页部分负责执行自定义功能区对应的逻辑功能。因为不需要显示网页,所以省略了HTML文件,并用main.js来引入所有的外部JavaScript文件;这些JavaScript文件中通常包含了一系列用JavaScript实现的函数,这些函数与自定义功能区的功能一一对应,我们称之为接口函数

启动时文件加载过程

WPS 加载项开发说明

WPS在启动时加载index.html,这是WPS加载项的入口文件。index.html从当前路径引入main.js,main.js又引入了js文件夹里面的util.jsribbon.jssystemdemo.js等各种js文件,从而能够在接下来的过程中调用接口函数。当网页成功打开之后,开始解析ribbon.xml生成自定义功能区,解析过程中会调用若干次接口函数,最终完成加载。

程序初始化之后,WPS自定义功能区会生成很多button按钮。其中,点击“弹对话框网页”会生成dialog.html页面,引入dialog.js。点击“弹任务窗格网页”会生成taskpane.html,引入taskpane.js。点击事件在ribbon.js中定义。

注意,开发者应当避免在该目录下创建index.html

WPS加载项API使用

WPS加载项API通过对JavaScript功能进行的扩展,实现了网页与WPS应用程序交互的能力。这些API被集中在window.wps对象下,而我们在开发中通常会省略掉window,直接以wps开始。

开发加载项

在项目目录中,你可以看到一些基本的文件结构,包括imagesjsui等目录,以及index.htmlmain.jsribbon.xml等文件。

编辑这些文件以实现你的功能需求。例如,你可以在index.html中添加HTML代码,在main.js中编写JavaScript逻辑。ribbon.xml用于定义加载项在WPS中的菜单和按钮。

我们在WPS加载项概述里讲了三种交互方式,通过对这些文件的编辑,实现自己的业务逻辑。

自定义功能区:ribbon.xmlribbon.js展示WPS加载项自定义功能区(效率符号)的菜单按钮

对话框:dialog.htmldialog.js展示WPS加载项自定义功能区的“弹对话框网页”按钮

任务窗格:taskpane.htmltaskpane.js展示WPS加载项自定义功能区的“弹任务窗格网页”按钮

WPS 加载项开发说明

调试

WPS加载项调试是对其中的一个网页单独进行的调试。调试时会弹出一个独立调试器对话框,除此之外和网页调试基本一致。可以在调试器的Console中直接查看任意的API属性和调用API方法。调试自动生成的index.html网页,使用快捷键ALT+F12。

注意调试过程中需要先关闭alert或其它同步弹框,才能继续向下调试。

系统集成

用户可以在自己的浏览器中调用WPS加载项的JavaScript方法。 wps_sdk.js对调用进行了封装,让开发者可以快速调用,wps_sdk.js对Chrome、Edge、IE8及IE8以上浏览器进行了支持。

发布部署

加载项开发完成后,很多开发者可能会有这样的一些问题:加载项如何部署呢、用户如何访问部署后的加载项呢、用户需要安装什么、用户是否需要去手动修改配置呢?

目前我们提供两种部署方式,jsplugins.xml模式publish.xml模式,两种都不需要用户去手动配置什么,只需要本地安装好相应版本的WPS就行。

(0)
上一篇 2024年11月12日 下午7:53
下一篇 2024年11月13日 上午10:37

相关推荐

  • 湘西州新冠肺炎疫情防控指挥部关于居民健康码解码工作的温馨提示

    2022-10-14 10:16 · 来自湖南 · 红网 近期,因新冠肺炎疫情防控工作需要,湘西州部分县市对所辖区内的部分居民按照不同风险等级实施了健康码赋码。截至10月13日,已有部分居民达到解码要求但没有得到及时解码。为了帮助居民做好安全、科学、精准解码工作,恢复正常的生产生活,州、县市两级新冠肺炎疫情防控指挥部已成立健康码管理协调服务工作专班,开展对符…

    2022年10月14日
    78800
  • 基层医疗卫生机构五类疾病药品采购清单

    湖南省医疗保障局关于公布基层医疗卫生机构五类疾病药品采购清单的通知 湘医保招采函〔2025〕67号  各市州、县市区医疗保障局,各相关医疗机构,各相关企业:     根据《关于调整优化基层医疗卫生机构药品采购清单的通知》(湘医保招采函〔2025〕57号)要求,现将纳入基层医疗卫生机构治疗“高血压、糖尿病、慢性阻塞性肺病、血吸虫病、尘肺病”五类疾病药品采购清单…

    其他 2025年8月6日
    6800
  • (10月8日)凤凰县新增2例新冠肺炎感染者(第6、7例)

    来源:凤凰县新冠肺炎疫情防控指挥部 发布时间2022年10月8日02:53:57 2022年10月6日0-24时,我县新增2例新冠病毒核酸检测阳性感染者,目前均已转运至定点救治医院。现将活动轨迹通告如下: 龙某英,女,44岁,凤凰朴雅民宿杜田湘菜馆服务员,居住于凤凰县杜田村8组,系4例省外输入型新冠肺炎阳性感染者的密切接触者。 10月1日 06:30 骑摩托…

    其他 2022年10月8日
    59800
  • 人工智能如何赋能工作和生活

    人工智能通过技术创新和场景落地,正深度赋能工作和生活的多个维度,带来效率提升、体验优化和模式革新。以下,结合自己的工作和生活实际,谈一谈自己的一点经验,分享给大家: 特别注意:涉密资料不上网!个人隐私不上网! 一、人工智能赋能工作:提升效率与创新价值 (一)自动化重复劳动,释放人力价值 业务系统核查错误。 (二)一些复制粘贴的小技巧 我们在下载文档的时候,在…

    其他 2025年7月21日
    8400

发表回复

登录后才能评论