成人免费xxxxx在线视频软件_久久精品久久久_亚洲国产精品久久久_天天色天天色_亚洲人成一区_欧美一级欧美三级在线观看

JS開源庫適配OpenHarmony系列—第一期實操

系統 OpenHarmony
由于OpenHarmony開發框架中的API不完全兼容V8運行時的Build-In API,因此建議在適配JS三方庫前,使用js-e2e掃描三方庫,檢查是否存在node.js/web內置模塊的依賴。

想了解更多關于開源的內容,請訪問:

51CTO 開源基礎軟件社區

https://ost.51cto.com

一、為什么適配JS開源庫

由于OpenHarmony應用是基于ArkTS開發,而ArkTS是在保持TypeScript(簡稱TS)基礎語法風格的基礎上,對TS的動態類型特性施加更嚴格的約束,引入靜態類型。因此在開發OpenHarmony三方庫時,建議首選在成熟的JS/TS開源三方庫上開發。

二、選擇哪個JS開源庫合適

JS/TS開源三方庫的選擇需遵循易用性、實用性、維護性、擴展性等特性,通常方法是在github/npm上按照特性和語言搜索,找到star、fork數量較高的,且開源協議友好的JS/TS開源三方庫進行適配。

三、如何進行JS開源庫適配

由于OpenHarmony開發框架中的API不完全兼容V8運行時的Build-In API,因此建議在適配JS三方庫前,使用js-e2e掃描三方庫,檢查是否存在node.js/web內置模塊的依賴。

js-e2e工具時基于eslint進行封裝,可分析出JS庫代碼對node.js/web瀏覽器的內置模塊、對象的依賴及兼容ES標準版本,使用該工具,可以快速知道該庫是否依賴node.js/web內置模塊。

如果掃描結果不依賴node.js/web內置模塊,那么,這個庫將比較輕松地適配。如果大量依賴node.js/web內置組件,這時可能需要fork源庫代碼,進行侵入式修改,或者再找是否存在更適合的其他三方庫。

注:掃描時需同時掃描package.json文件中dependencies標簽中直接依賴和間接依賴,因為發布OpenHarmony三方庫中心倉時,需要將依賴的組件都發布。建議使用npm insall下載所有依賴的代碼后,一起掃描查看結果。

1、luxon開源庫信息

在npm中心倉庫查看用于處理日期和時間的目標庫luxon信息,包括開源倉庫地址,主頁地址,版本,協議,文件大小,總文件數,最后發布時間等。

在OpenHarmony中心倉搜索是否存在luxon目標庫。

在luxon源代碼倉庫查看star和fork數量,查看是否被經常使用和經常被維護。

luxon倉庫:https://github.com/moment/luxon

2、JS三方庫掃描工具介紹

js-e2e是基于eslint進行封裝、配置規則,用于分析JS庫代碼對NodeJS和Web瀏覽器的內置模塊、對象的依賴及兼容ES標準版本的工具,支持檢查指定源碼目錄和指定三方庫的兼容性。

(1)使用git工具同步js-e2e代碼

(2)安裝npm依賴包

(3)安裝自定義的eslint輸出報告formatter,包含csv、csvsimple、vscode、vscodesimple

(4)執行檢查命令

3、適配luxon三方庫

使用DevEco Studio開發者工具,創建OpenHarmony應用工程。

在工程中新建Module,選擇“Static Library”模板。

移除library模塊src/main/ets目錄中的components目錄,刪除Index.ets文件中的代碼。

直接復制js-e2e工具檢查時下載的luxon包(temp/node_modules/luxon),并將src目錄中的文件復制到library模塊的src/main/ets/lib目錄下。

修改Index.ets文件為其他開發者提供調用接口。

在oh-package.json5中完善三方庫信息,如名稱、簡介、版本、開源協議、作者、關鍵字等。

在工程目錄中選中三方庫名稱,單擊菜單欄中的Build > Make Module ‘library’編譯構建生成三方庫HAR包,HAR包可在模塊下的build目錄下獲取,包格式為*.har。

4、驗證luxon三方庫

打開entry/oh-package.json5配置文件,在dependencies標簽中引入luxon三方庫,并單擊Sync Now進行同步。

打開pages/Index.ets頁面文件,引入luxon三方庫并顯示當前日期。

至此,簡單的JS開源三方庫適配OpenHarmony已經完成了,下節我們將推出如何將講解如何進行XTS測試,OpenHarmony三方庫發布標準,適配的三方庫發布到OpenHarmony三方庫中心倉以及如何貢獻到OpenHarmony-TPC。

想了解更多關于開源的內容,請訪問:

51CTO 開源基礎軟件社區

https://ost.51cto.com

責任編輯:jianghua 來源: 51CTO 開源基礎軟件社區
相關推薦

2022-04-06 11:41:07

Harmony觀后感開源

2013-10-08 16:57:58

企業網絡架構華為

2010-05-10 19:43:37

IT號外智能計算

2013-07-02 17:29:21

IT半小時

2018-06-14 11:02:37

區塊鏈支付寶去中心化

2016-12-22 10:26:16

2011-08-10 13:50:35

2016-10-21 13:37:50

大數據大數據技術

2015-12-14 15:38:39

2016-04-25 15:58:07

Linux磁盤

2017-01-17 14:01:18

大數據框架結構 數據源

2012-02-08 15:28:42

炎黃盈動

2015-08-19 09:39:09

聯盟秘書處 

2018-11-08 15:58:15

生產系統

2015-07-27 15:34:43

51CTO學院技術沙龍WEB開發

2011-10-18 09:59:06

移動推送技術

2012-12-14 12:12:34

NEIC訓練團開班儀式

2015-12-25 14:04:26

2011-11-04 10:01:53

金e獎

2012-11-29 13:23:17

挨踢人物傳51CTO技術論壇
點贊
收藏

51CTO技術棧公眾號

主站蜘蛛池模板: 成人深夜小视频 | 2018天天干天天操 | 2021天天躁夜夜看 | 蜜臀网站| 国产精品一区二区三区99 | 91精品亚洲 | 天天操天天操 | 国偷自产av一区二区三区 | 奇米影视首页 | 日本午夜网 | 久久久久国产一区二区三区四区 | 六月色婷 | 伦理午夜电影免费观看 | h视频在线免费 | www.欧美| 久久久久久久久久久国产 | 国产99久久精品 | 天天影视综合 | 日韩性生活网 | a毛片| 成人欧美日韩一区二区三区 | 国产精品欧美一区二区三区不卡 | 亚洲日日操 | 久久亚洲视频网 | 日本 欧美 国产 | 成年人国产在线观看 | 一区二区三区播放 | 国产视频三级 | 一区二区成人 | 一区二区三区视频在线免费观看 | 国产一级一级 | 日本一区二区三区在线观看 | 亚洲一区二区免费电影 | 成人区一区二区三区 | 超碰成人在线观看 | 91精品国产日韩91久久久久久 | 久久久久国产 | 午夜精品久久久久99蜜 | 色99视频| 欧美激情视频一区二区三区在线播放 | 欧美在线观看一区 |