🚀前言
元件容器是一種用於管理和組織元件的工具或環境。它可以提供一些基本的功能,如元件的註冊、建立、銷燬和查詢。元件容器通常會維護一個元件的依賴關係,並負責將這些依賴注入到元件中。它還可以提供一些其他的功能,如生命週期管理、事件通知、配置管理等。透過使用元件容器,開發者可以更方便地管理和使用元件,提高程式碼的可維護性和可複用性。
🚀一、AbilityStage元件容器
🔎1.AbilityStage的概念
AbilityStage是HarmonyOS中的元件容器。它是一個用於管理和顯示應用程式頁面的容器,類似於Android中的Activity或iOS中的ViewController。AbilityStage可以包含多個Ability(能力),每個Ability都代表著應用程式中的一個頁面或功能。
透過AbilityStage,應用程式可以實現頁面之間的切換、頁面的生命週期管理、事件的分發和處理等功能。它具有以下特點:
-
生命週期管理:AbilityStage可以管理Ability的生命週期,包括建立、啟動、暫停、恢復和銷燬等,以確保頁面的正常執行。
-
導航能力:AbilityStage提供了頁面之間的導航能力,可以方便地進行頁面切換和跳轉。
-
事件處理:AbilityStage可以分發和處理應用程式中的各種事件,如觸控事件、按鍵事件等。
-
佈局管理:AbilityStage可以根據應用程式的佈局要求,對Ability進行佈局管理,實現靈活的頁面佈局。
AbilityStage與Module一一對應,即一個Module擁有一個AbilityStage。
🔎2.AbilityStage的使用
1、在工程Module對應的ets目錄下,右鍵選擇“New > Directory”,新建一個目錄並命名為myabilitystage。
2、在myabilitystage目錄,右鍵選擇“New > TypeScript File”,新建一個TypeScript檔案並命名為MyAbilityStage.ts。
3、開啟MyAbilityStage.ts檔案,匯入AbilityStage的依賴包,自定義類繼承AbilityStage並加上需要的生命週期回撥,示例中增加了一個onCreate()生命週期回撥。
import AbilityStage from '@ohos.app.ability.AbilityStage';
export default class MyAbilityStage extends AbilityStage {
onCreate() {
// 應用的HAP在首次載入的時,為該Module初始化操作
}
onAcceptWant(want) {
// 僅specified模式下觸發
return "MyAbilityStage";
}
}
4、在module.json5配置檔案中,透過配置srcEntry引數來指定模組對應的程式碼路徑,以作為HAP載入的入口。
{
"module": {
"name": "entry",
"type": "entry",
"srcEntry": "./ets/myabilitystage/MyAbilityStage.ts",
...
}
}
AbilityStage擁有生命週期/事件回撥:
🚀寫在最後
- 如果你覺得這篇內容對你還蠻有幫助,我想邀請你幫我三個小忙:
- 點贊,轉發,有你們的 『點贊和評論』,才是我創造的動力。
- 關注小編,同時可以期待後續文章ing🚀,不定期分享原創知識。
- 更多鴻蒙最新技術知識點,請關注作者部落格:https://t.doruo.cn/14DjR1rEY