RM新时代网站-首页

0
  • 聊天消息
  • 系統(tǒng)消息
  • 評(píng)論與回復(fù)
登錄后你可以
  • 下載海量資料
  • 學(xué)習(xí)在線課程
  • 觀看技術(shù)視頻
  • 寫(xiě)文章/發(fā)帖/加入社區(qū)
會(huì)員中心
創(chuàng)作中心

完善資料讓更多小伙伴認(rèn)識(shí)你,還能領(lǐng)取20積分哦,立即完善>

3天內(nèi)不再提示

WPS加載項(xiàng)的功能特點(diǎn)及使用方法

OSC開(kāi)源社區(qū) ? 來(lái)源:OSCHINA社區(qū) ? 作者: KaySama ? 2022-10-11 10:26 ? 次閱讀

WPS二次開(kāi)發(fā)之加載項(xiàng)(一):Hello WPS;

官方對(duì) WPS 加載項(xiàng)的解釋:

WPS 加載項(xiàng)是一套基于 Web 技術(shù)用來(lái)擴(kuò)展 WPS 應(yīng)用程序的解決方案。每個(gè) WPS 加載項(xiàng)都對(duì)應(yīng)打開(kāi)了一個(gè)網(wǎng)頁(yè),并通過(guò)調(diào)用網(wǎng)頁(yè)中 JavaScript 方法來(lái)完成其功能邏輯。WPS 加載項(xiàng)打開(kāi)的網(wǎng)頁(yè)可以直接與 WPS 應(yīng)用程序進(jìn)行交互,同時(shí)一個(gè) WPS 加載項(xiàng)中的多個(gè)網(wǎng)頁(yè)形成了一個(gè)整體, 相互之間可以進(jìn)行數(shù)據(jù)共享。開(kāi)發(fā)者不必關(guān)注瀏覽器兼容的問(wèn)題,因?yàn)?WPS 加載項(xiàng)的底層是以 Chromium 開(kāi)源瀏覽器項(xiàng)目為基礎(chǔ)進(jìn)行的優(yōu)化擴(kuò)展。WPS 加載項(xiàng)具備快速開(kāi)發(fā)、輕量化、跨平臺(tái)的特性,目前已針對(duì) Windows/Linux 操作系統(tǒng)進(jìn)行適配。WPS 加載項(xiàng)功能特點(diǎn)如下:

完整的功能??赏ㄟ^(guò)多種不同的方法對(duì)文檔、電子表格和演示文稿進(jìn)行創(chuàng)作、格式設(shè)置和操控;通過(guò)鼠標(biāo)、鍵盤執(zhí)行的操作幾乎都能通過(guò) WPS 加載項(xiàng) 完成;可以輕松地執(zhí)行重復(fù)任務(wù),實(shí)現(xiàn)自動(dòng)化。

三種交互方式。自定義功能區(qū),采用公開(kāi)的 CustomUI 標(biāo)準(zhǔn),快速組織所有功能;任務(wù)窗格,展示網(wǎng)頁(yè),內(nèi)容更豐富;Web 對(duì)話框,結(jié)合事件監(jiān)聽(tīng),實(shí)現(xiàn)自由交互。

標(biāo)準(zhǔn)化集成。不影響 JavaScript 語(yǔ)言特性,網(wǎng)頁(yè)運(yùn)行效果和在瀏覽器中完全一致;WPS 加載項(xiàng)開(kāi)發(fā)文檔完整,接口設(shè)計(jì)符合 JavaScript 語(yǔ)法規(guī)范,避免不必要的學(xué)習(xí)成本,縮短開(kāi)發(fā)周期。

想真正知道這所謂的 “加載項(xiàng)” 到底是是個(gè)啥,紙上談兵不如實(shí)踐一遍,跟著下面步驟來(lái)一發(fā)。首先得電腦需要安裝 wps(廢話)、Node.js。

1、管理員權(quán)限(如果安裝的是 wps 個(gè)人版,不需要管理員權(quán)限)啟動(dòng)命令行,通過(guò) npm 全局安裝 wpsjs 開(kāi)發(fā)工具包:npm install -g wpsjs,如果之前已經(jīng)安裝了,可以更新下:npm update -g wpsjs。

建議使用淘寶鏡像:npm config set registry https://registry.npm.taobao.org

2、新建一個(gè) wps 加載項(xiàng),假設(shè)取名為 "HelloWps":wpsjs create HelloWps,會(huì)出現(xiàn)如下圖的幾個(gè)選項(xiàng):

c2e36bc4-489c-11ed-a3b6-dac502259ad0.png

3、這里我們選擇 “電子表格” 后,會(huì)讓你選擇前端框架:

c309f4ce-489c-11ed-a3b6-dac502259ad0.png

4、如果你熟悉 vue,選擇 “Vue” 以后,wpsjs 會(huì)在當(dāng)前目錄創(chuàng)建如下的工程結(jié)構(gòu)

c32c3ae8-489c-11ed-a3b6-dac502259ad0.png

5、執(zhí)行調(diào)試命令:wpsjs debug

該命令會(huì)自動(dòng)修改 oem.ini 配置,并在本地生成 jsplugins.xml 文件,命令執(zhí)行后會(huì)自動(dòng)啟動(dòng) wps 并加載 HelloWps 這個(gè)加載項(xiàng),同時(shí) wpsjs 工具包啟了一個(gè) http 服務(wù),此服務(wù)主要提供兩方面的能力:

提供前端頁(yè)的的熱更新服務(wù),wpsjs 工具包檢測(cè)到網(wǎng)頁(yè)數(shù)據(jù)變化時(shí),自動(dòng)刷新頁(yè)面。

提供 wps 加載項(xiàng)的在線服務(wù),wpsjs 生成的代碼示例是一個(gè)在線模式,wps 客戶端程序?qū)嶋H上是通過(guò) http 服務(wù)來(lái)請(qǐng)求在線的 wps 加載項(xiàng)相關(guān)代碼和資源的。

6、在 wps 打開(kāi)新標(biāo)簽頁(yè),選擇新建空白電子表格,如果出現(xiàn)如下的 “wps 加載項(xiàng)實(shí)例” 則表示加載項(xiàng)安裝成功了。

c34c4b94-489c-11ed-a3b6-dac502259ad0.png

至此,wps 加載項(xiàng)代碼可以開(kāi)始編寫(xiě)運(yùn)行。但是正式使用的時(shí)候,我們需要把加載項(xiàng)發(fā)布到生產(chǎn)環(huán)境

目前 wps 提供兩種部署方式:jsplugins.xml 模式和 publish.xml 模式。

publish 模式是通過(guò) wpsjs 工具包的 wpsjs publish 命令打包,將生成的文件夾下的所有文件部署到打包時(shí)填寫(xiě)服務(wù)器地址去。告知用戶 publish.html 地址,業(yè)務(wù)系統(tǒng)開(kāi)發(fā)商可將 publish.html 的功能按需整合到自己的頁(yè)面中,便于做基礎(chǔ)環(huán)境監(jiān)測(cè)。也可以復(fù)用此頁(yè)面給到用戶,用戶可自己控制啟用和禁用哪些加載項(xiàng)。

jsplugins.xml 模式是通過(guò)設(shè)置 oem.ini 配置文件的 JSPluginsServer 的值為加載項(xiàng)管理文件 jsplugins.xml 來(lái)控制加載項(xiàng)的加載(相當(dāng)于 WPS 加載項(xiàng)列表文件),二次打包時(shí),業(yè)務(wù)開(kāi)發(fā)商需要告知我們 JSPluginsServer 的配置地址,將其配置到 oem.ini 文件中,業(yè)務(wù)開(kāi)發(fā)商再做安裝包分發(fā)。后續(xù)的加載項(xiàng)的控制用,業(yè)務(wù)開(kāi)發(fā)商可以自由的更改 jsplugins.xml 文件,實(shí)現(xiàn)加載項(xiàng)的新增,修改。

publish 模式:

1、執(zhí)行發(fā)布命令:wpsjs publish

c37f2014-489c-11ed-a3b6-dac502259ad0.png

2、輸入你打算部署 wps 加載項(xiàng)的服務(wù)器地址,本例是http://localhost/wps-host/,注意必須要有結(jié)尾的斜杠

c39c9fe0-489c-11ed-a3b6-dac502259ad0.png

3、按照提示,把 wps-addon-build 目錄下的文件部署到服務(wù)器目錄。我本地配置了 nginx 代理,服務(wù)器目錄是D:/static_folder/wps-addon-build/,可通過(guò)http://localhost/wps-host/訪問(wèn)打包出來(lái)的文件。

如果部署地址下的 ribbon.xml(http://localhost/wps-host/ribbon.xml)可以正常訪問(wèn),說(shuō)明代碼部署成功了。

nginx 關(guān)鍵配置如下

c3c5e15c-489c-11ed-a3b6-dac502259ad0.png

如果想學(xué)習(xí)nginx 可參考另一篇博文:如何優(yōu)雅地在 Windows 上使用 Nginx

4、按照提示把 publish.html 也部署到服務(wù)器上,通過(guò)訪問(wèn)服務(wù)器上的 publish.html實(shí)現(xiàn)加載項(xiàng)的加載和卸載操作。當(dāng)存在多個(gè)加載項(xiàng)時(shí),在每一個(gè)加載項(xiàng)項(xiàng)目下都執(zhí)行一次wpsjs publish,并且將每個(gè)加載項(xiàng)單獨(dú)部署即可。本例的地址是:http://localhost/wps-host/publish.html

5、瀏覽器打開(kāi) publish.html 的線上地址,點(diǎn)擊 “安裝”,等頁(yè)面按鈕變成 “卸載”,狀態(tài)顯示 “正?!?,則表示加載項(xiàng)安裝成功,如圖:

c3e50988-489c-11ed-a3b6-dac502259ad0.png

6、這時(shí)候重啟 wps,打開(kāi)一個(gè)空白電子表格,如果出現(xiàn) debug 時(shí)的 “wps 加載項(xiàng)實(shí)例” 則表示加載項(xiàng)在線安裝生效了

7、如果以上步驟都沒(méi)問(wèn)題,但是就是沒(méi)出現(xiàn) “wps 加載項(xiàng)實(shí)例”,可以試著把wps 安裝目錄 /office6/cfgs/oem.ini文件的JsApiPlugin=true改為JsApiPlugin=false。

jsplugins.xml 模式

1、執(zhí)行生產(chǎn)環(huán)境打包命令:wpsjs build

c43862a4-489c-11ed-a3b6-dac502259ad0.png

2、離線和在線的方式各有優(yōu)缺點(diǎn):

在線插件 ——

優(yōu)點(diǎn):加載比較平滑,用戶首次加載或版本更新后的用戶初次訪問(wèn)時(shí)間會(huì)比離線模式高,且每次都是使用最新的代碼

缺點(diǎn):每次執(zhí)行時(shí),都是去請(qǐng)求服務(wù)器上的資源,比較浪費(fèi)網(wǎng)絡(luò)資源,并且網(wǎng)絡(luò)不好時(shí),不能訪問(wèn)。

總結(jié):在線模式適合在資源頻繁改動(dòng),且網(wǎng)絡(luò)穩(wěn)定的情況下使用

離線插件 ——

優(yōu)點(diǎn):只要 name_version 等于加載項(xiàng)文件夾的名字,加載項(xiàng)就不會(huì)去更新加載項(xiàng)的包,采用本地的加載項(xiàng)包資源,大大的節(jié)省網(wǎng)絡(luò)資源和用戶的時(shí)間。

缺點(diǎn):初次加載或版本變更時(shí),都會(huì)先去下載整個(gè)加載項(xiàng)包,并解壓,會(huì)比較耗費(fèi)時(shí)間

總結(jié):離線模式適合資源改動(dòng)不頻繁的情況

我這里選擇在線插件

c458c83c-489c-11ed-a3b6-dac502259ad0.png

3、按照提示,將目錄 wps-addon-build 下的文件署到服務(wù)器,然后將加載項(xiàng)的地址配置到原有的 jsplugins.xml 文件中,如果沒(méi)有,新建一個(gè) jsplugins.xml 文件,將加載項(xiàng)的地址配置到該文件。將 oem.ini 文件中的 JSPluginsServer 的值寫(xiě)成 jsplugins.xml 文件的部署地址。

審核編輯:湯梓紅

聲明:本文內(nèi)容及配圖由入駐作者撰寫(xiě)或者入駐合作網(wǎng)站授權(quán)轉(zhuǎn)載。文章觀點(diǎn)僅代表作者本人,不代表電子發(fā)燒友網(wǎng)立場(chǎng)。文章及其配圖僅供工程師學(xué)習(xí)之用,如有內(nèi)容侵權(quán)或者其他違規(guī)問(wèn)題,請(qǐng)聯(lián)系本站處理。 舉報(bào)投訴
  • Web
    Web
    +關(guān)注

    關(guān)注

    2

    文章

    1262

    瀏覽量

    69440
  • 開(kāi)源
    +關(guān)注

    關(guān)注

    3

    文章

    3309

    瀏覽量

    42471

原文標(biāo)題:WPS二次開(kāi)發(fā)之加載項(xiàng)

文章出處:【微信號(hào):OSC開(kāi)源社區(qū),微信公眾號(hào):OSC開(kāi)源社區(qū)】歡迎添加關(guān)注!文章轉(zhuǎn)載請(qǐng)注明出處。

收藏 人收藏

    評(píng)論

    相關(guān)推薦

    通過(guò)串行和AT命令使用wps8266,是否可以使用WPS PBC功能和AT命令?

    我正在通過(guò)串行和 AT 命令使用 wps8266,是否可以使用 WPS PBC 功能和 AT 命令?
    發(fā)表于 07-16 07:35

    天線的選擇與使用方法

    無(wú)線模塊的通信距離是一項(xiàng)重要指標(biāo),如何把有效通信距離最大化一直是大家疑惑的問(wèn)題。本文根據(jù)調(diào)試經(jīng)驗(yàn)及對(duì)天線的選擇與使用方法做了一些說(shuō)明,希望對(duì)工程師快速調(diào)試通信距離有所幫助。無(wú)線模塊的通信距離是一項(xiàng)
    發(fā)表于 01-04 06:11

    Gowin AEC IP的產(chǎn)品特點(diǎn)使用方法

    Gowin AEC IP用戶指南主要包括產(chǎn)品概述、特征性能、功能描述、調(diào)用配置及參考設(shè)計(jì),旨在幫助用戶快速了解 Gowin AEC IP 的產(chǎn)品特點(diǎn)使用方法。
    發(fā)表于 10-08 06:05

    Gowin ASRC IP的產(chǎn)品特點(diǎn)使用方法

    Gowin ASRC IP 用戶指南主要包括產(chǎn)品概述、特征性能、功能描述、配置調(diào)用、參考設(shè)計(jì)等,旨在幫助用戶快速了解 Gowin ASRC IP 的產(chǎn)品特點(diǎn)使用方法。
    發(fā)表于 10-08 06:26

    如何為ESP實(shí)現(xiàn)WPS功能?

    我想為我的 ESP 實(shí)現(xiàn) WPS 功能,但我找不到適用于 Arduino 平臺(tái)的工作庫(kù)。這個(gè)庫(kù)真的存在嗎?
    發(fā)表于 02-27 08:16

    excel2007加載項(xiàng)

    excel2007加載宏文件,某些安裝時(shí)沒(méi)有這些好用的加載項(xiàng),在此分享給大家
    發(fā)表于 10-29 18:04 ?9次下載

    wps演示如何內(nèi)嵌音頻?wps內(nèi)嵌音頻方法介紹

     如何在WPS演示中為演示文稿插入音頻?PPT在日常的工作和學(xué)習(xí)中的使用越來(lái)越廣泛,掌握PPT制作的基本知識(shí),有助于促進(jìn)工作和學(xué)習(xí)。當(dāng)需要為演示文稿插入音頻的時(shí)候,那么在WPS中,該如何為WPS演示文稿插入音頻呢?以下將是在
    發(fā)表于 11-01 09:58 ?4w次閱讀

    淺談STM32CubeMX使用方法功能介紹

    STM32CubeMX使用方法功能介紹
    的頭像 發(fā)表于 03-25 11:02 ?1.2w次閱讀
    淺談STM32CubeMX<b class='flag-5'>使用方法</b>及<b class='flag-5'>功能</b>介紹

    了解你們沒(méi)有使用到的功能(Keil的使用方法)

    了解更多你們沒(méi)有使用到的功能(Keil的使用方法)
    的頭像 發(fā)表于 03-25 11:25 ?3381次閱讀
    了解你們沒(méi)有使用到的<b class='flag-5'>功能</b>(Keil的<b class='flag-5'>使用方法</b>)

    Keil的使用方法 - 常用功能(二)

    Keil的使用方法 - 常用功能(二)
    的頭像 發(fā)表于 04-07 14:55 ?3308次閱讀
    Keil的<b class='flag-5'>使用方法</b> -  常用<b class='flag-5'>功能</b>(二)

    Keil的使用方法 - 常用功能(一)

    Keil的使用方法 - 常用功能(一)
    的頭像 發(fā)表于 04-07 14:51 ?8811次閱讀
    Keil的<b class='flag-5'>使用方法</b> -  常用<b class='flag-5'>功能</b>(一)

    AT32 MCU Printf的功能使用方法

    AT32 MCU Printf的功能使用方法
    的頭像 發(fā)表于 10-27 09:27 ?1135次閱讀
    AT32 MCU Printf的<b class='flag-5'>功能使用方法</b>

    wps的vlookup函數(shù)的使用方法及實(shí)例

    WPS Office是一款功能全面的辦公軟件,其中的VLOOKUP函數(shù)在數(shù)據(jù)分析和處理中非常常用。在本文中,我們將詳細(xì)介紹WPS Office中VLOOKUP函數(shù)的使用方法,并提供一些
    的頭像 發(fā)表于 12-01 10:58 ?3845次閱讀

    wps的vlookup函數(shù)的使用方法

    WPS的VLOOKUP函數(shù)是一種非常強(qiáng)大的功能,它可以幫助用戶在大型數(shù)據(jù)表格中快速查找并提取所需的信息。本文將詳細(xì)介紹VLOOKUP函數(shù)的使用方法,包括語(yǔ)法、參數(shù)設(shè)置和實(shí)例演示。 一、VLOOKUP
    的頭像 發(fā)表于 12-01 11:02 ?2516次閱讀

    wps有vlookup的功能

    WPS是一款常用的辦公軟件套件,其中包括WPS文字、WPS表格和WPS演示等多個(gè)功能模塊。在WPS
    的頭像 發(fā)表于 12-01 11:05 ?1285次閱讀
    RM新时代网站-首页