前言
鴻蒙應用開發(fā)已經成為互聯(lián)網新的風口,開發(fā)鴻蒙軟件已經成為今年工作的核心目標。在軟件開發(fā)過程中,對于復雜度較大,功能較多的軟件都會采用組件化項目架構,那么對于鴻蒙應用開發(fā)是否也能實現組件化呢?本文將詳細講解HarmonyOs組件化項目搭建的全過程,帶領大家實現一個組件化項目。
項目創(chuàng)建
- 首先創(chuàng)建一個項目工程,點擊開發(fā)工具DevEco-Stdio的****File選項,選擇New然后點擊 Create Project。

- 選擇創(chuàng)建一個EmptyAbility,然后直接下一步,創(chuàng)建工程。

- **工程主要包括一個entry模塊,可以理解為Android的app主模塊。 **

公共庫創(chuàng)建及使用
創(chuàng)建公共庫Common組件。
- 在工程目錄中,單機鼠標右鍵,選擇New選項,然后在彈出的頁面中選擇Module。

- 在彈出的頁面中,選擇創(chuàng)建一個靜態(tài)庫****Static Library。

- 然后點擊Next,修改靜態(tài)庫的名稱為common。

- 點擊完成后,編譯器會自動在項目的根目錄的build-profile.json5文件中添加common模塊。

- 添加項目依賴,common作為公共庫,需要提供給其他模塊使用,這里以entry為例,添加模塊依賴,如下圖所示。

- 至此,一個公共庫common就創(chuàng)建完成了。
功能模塊創(chuàng)建使用
一個功能復雜龐大的app不僅有公共模塊,還有許多子模塊構建而成。創(chuàng)建流程如下:
- 在工程目錄中,單機鼠標右鍵,選擇New選項,然后在彈出的頁面中選擇Module。

- 在彈出的頁面中,選擇創(chuàng)建一個共享庫****Shared Library。

- 然后點擊Next,修改靜態(tài)庫的名稱為login。
- 點擊完成后,編譯器會自動在項目的根目錄的build-profile.json5文件中添加login模塊。

- 添加項目依賴,login作為子模塊,需要被entry依賴調用,添加模塊依賴,如下圖所示。

- 到目前為止子模塊也創(chuàng)建完成。
模塊路由跳轉
前面創(chuàng)建分別創(chuàng)建了公共庫和子模塊,如何從主模塊entry跳轉到子模塊login,或者子模塊之間互相跳轉呢?
- HarmonyOs在頁面跳轉時提供了router實現路由跳轉。需要跳轉的目標頁面必須滿足兩個條件, @Entry修飾struct 和路由注冊。被@Entry修飾的struct才是一個獨立頁面。同時需要在main_pages.json中注冊路由。

- 在common中定義完整路徑。不同子模塊都會依賴公共靜態(tài)庫common。然后在common中定義目標頁面的全路徑。

全路徑主要由三部分組成。分別是@bundle: 代表模版。 然后是 包名 com.cms.mvvm。最后是模塊名+目標頁面的全路徑。
- 導出 ConstantRouter類,提供給其他模塊調用。

- 引入ConstantRouter類,調用類中定義的路由。

總結
HarmonyOs組件化的使用,有利于模塊之間的解耦及大型項目的共同開發(fā)。隨著鴻蒙生態(tài)的不斷完善,學習鴻蒙開發(fā)勢必成為新的趨勢。也是廣大同行新的選擇。
對
審核編輯 黃宇
聲明:本文內容及配圖由入駐作者撰寫或者入駐合作網站授權轉載。文章觀點僅代表作者本人,不代表電子發(fā)燒友網立場。文章及其配圖僅供工程師學習之用,如有內容侵權或者其他違規(guī)問題,請聯(lián)系本站處理。
舉報投訴
-
HarmonyOS
+關注
關注
80文章
2156瀏覽量
36269
發(fā)布評論請先 登錄
相關推薦
熱點推薦
AI大模型微調企業(yè)項目實戰(zhàn)課
低到消費級顯卡可承受的范圍,更將訓練周期從數月壓縮至幾天甚至幾個小時。
三、 實戰(zhàn)演練:企業(yè)微調的“三步走”兵法
一門優(yōu)秀的企業(yè)微調實戰(zhàn)課,絕不是枯燥的理論堆砌,而是直擊痛點的工程化指南。完整的微調
發(fā)表于 04-16 18:48
中小車企 ASPICE 落地實戰(zhàn):低成本高效能研發(fā)體系搭建
試點項目的成功經驗結構化梳理,轉化為企業(yè)的固有資產,逐步推廣至所有項目,形成組織級的研發(fā)文化、經驗與標準化流程
五、體系落地的核心價值:形成研發(fā)能力馬太效應
中小車企
發(fā)表于 04-13 10:48
釘釘正式開源HarmonyOS圖片編輯組件
近日,由釘釘團隊自主研發(fā)的“HarmonyOS圖片編輯組件”正式上線OpenHarmony三方庫中心倉并開源。作為一款填補鴻蒙社區(qū)圖像處理領域空白的重量級組件,該方案基于HarmonyOS
儲能項目從規(guī)劃到運營的全流程實戰(zhàn)指南
隨著儲能技術的成熟和成本的下降,儲能項目正從示范走向規(guī)模化應用。然而,從概念到落地,儲能項目需要經歷一個系統(tǒng)化的實施過程。本文將提供一個從規(guī)劃到運營的全流程
【匯思博SEEK100開發(fā)板試用體驗】開發(fā)環(huán)境安裝配置
??項目初始化設置??
創(chuàng)建Empty Ability工程
修改SDK版本至??API 12??(兼容OpenHarmony關鍵)
建議命名規(guī)范:MyApp_DeviceName(例
發(fā)表于 08-20 21:43
Ansible代碼上線項目實戰(zhàn)案例
在DevOps浪潮中,自動化部署已經成為每個運維工程師的必備技能。今天我將分享一個完整的Ansible代碼上線項目實戰(zhàn)案例,讓你的部署效率提升10倍!
【HarmonyOS 5】鴻蒙頁面和組件生命周期函數
【HarmonyOS 5】鴻蒙頁面和組件生命周期函數 ##鴻蒙開發(fā)能力 ##HarmonyOS SDK應用服務##鴻蒙金融類應用 (金融理財# 一、生命周期階段: 創(chuàng)建階段 build: 構建
【HarmonyOS 5】金融應用開發(fā)鴻蒙組件實踐
【HarmonyOS 5】金融應用開發(fā)鴻蒙組件實踐 ##鴻蒙開發(fā)能力 ##HarmonyOS SDK應用服務##鴻蒙金融類應用 (金融理財# 一、鴻蒙生態(tài)觀察 2024 年 1 月 18 日: 發(fā)布
【 HarmonyOS 5 入門系列 】鴻蒙HarmonyOS示例項目講解
【 HarmonyOS 5 入門系列 】鴻蒙HarmonyOS示例項目講解 ##鴻蒙開發(fā)能力 ##HarmonyOS SDK應用服務##鴻蒙金融類應用 (金融理財# 一、前言:移動開發(fā)
【「Yocto項目實戰(zhàn)教程:高效定制嵌入式Linux系統(tǒng)」閱讀體驗】01總結與實踐記錄
一、前言
非常感謝電子發(fā)燒友論壇讓我入選這本<<Yocto項目實戰(zhàn)教程>>書的試讀?;叵肫?022年當時好像參加阿里的某個比賽得到了D1s
發(fā)表于 06-30 11:38
HarmonyOS基礎組件:Button三種類型的使用
簡介 HarmonyOS在明年將正式不再兼容Android原生功能,這意味著對于客戶端的小伙伴不得不開始學習HarmonyOS開發(fā)語言。本篇文章主要介紹鴻蒙中的Button使用。 HarmonyOS
HarmonyOS5云服務技術分享--Serverless抽獎模板部署
手把手教你部署HarmonyOS Serverless抽獎活動模板(附貼心提醒)
嘿,小伙伴們!今天給大家分享一個超實用的教程——如何用華為HarmonyOS的Serverless模板快速搭建抽獎
發(fā)表于 05-22 20:25
HarmonyOS5云服務技術分享--Serverless搭建抽獎
?【實戰(zhàn)指南】手把手教你用華為AGC Serverless模板快速搭建抽獎活動?
嗨各位開發(fā)者小伙伴!今天給大家分享一個超實用的技巧——用華為應用市場AGC的Serverless模板三分鐘搞定抽獎
發(fā)表于 05-22 20:20
HarmonyOS5云服務技術分享--ArkTS開發(fā)Node環(huán)境
、支付平臺的通知,觸發(fā)自動化流程。
? 四、總結與展望
通過本文,你已經掌握了HarmonyOS云函數的核心開發(fā)流程,特別是Node.js與HTTP觸發(fā)器的實戰(zhàn)技巧。隨著HarmonyOS
發(fā)表于 05-22 17:21
【書籍評測活動NO.61】Yocto項目實戰(zhàn)教程:高效定制嵌入式Linux系統(tǒng)
,Yocto 項目應運而生。Yocto 項目不僅繼承了 Buildroot 的快速構建優(yōu)勢,還通過引入高度定制化的工具鏈和廣泛的硬件支持,彌補了 Buildroot 的不足。 Yocto項目
發(fā)表于 05-21 10:00
HarmonyOS實戰(zhàn):組件化項目搭建
評論