?🌟 鴻蒙應用開發常用三方庫指南(2025 最新版)
適用版本:HarmonyOS NEXT / API 12+
參考來源:HarmonyOS 三方庫中心
截止至 2025 年 8 月 1 日,本文整理了當前社區中下載量高、穩定性強、生態完善的熱門三方庫,涵蓋網絡請求、UI 組件、狀態管理、數據存儲、工具函數及媒體處理等核心模塊,幫助開發者快速構建高效、現代化的鴻蒙應用。
一、網絡與數據交互
1.?@ohos/axios
?—— 熟悉的 HTTP 客戶端
@ohos/axios
是 Axios 在 HarmonyOS 平臺的適配版本,支持 Promise 風格的異步請求,語法與 Web 端保持一致,極大降低遷移成本。
? 特性
- 支持 GET/POST/PUT/DELETE 請求
- 自動 JSON 序列化
- 攔截器(請求/響應)
- 超時控制、取消請求
- HTTPS 安全通信
🔧 安裝
{"dependencies": {"@ohos/axios": "1.3.2"}
}
💡 使用示例
import axios from '@ohos/axios';// 全局配置
axios.defaults.baseURL = 'https://api.example.com';
axios.defaults.timeout = 5000;// 添加請求攔截器(如鑒權)
axios.interceptors.request.use((config) => {const token = 'your-jwt-token';if (token) {config.headers.Authorization = `Bearer ${token}`;}return config;},(error) => Promise.reject(error)
);// GET 請求
async function fetchUser(id: number) {try {const response = await axios.get('/user', {params: { id }});console.info('用戶數據:', response.data);return response.data;} catch (error: any) {console.error('請求失敗:', error.message);}
}// POST 請求
async function createUser(userData: object) {const res = await axios.post('/user', userData);console.log('創建成功:', res.data);
}
?? 注意:在
module.json5
中需聲明網絡權限:"requestPermissions": [{ "name": "ohos.permission.INTERNET" } ]
2.?@ohos/websocket
?—— 實時通信支持
適用于聊天、通知推送、實時監控等場景,提供穩定的 WebSocket 客戶端能力。
? 特性
- 支持?
wss://
?安全連接 - 消息監聽與發送
- 斷線重連機制(需自行實現或使用擴展)
🔧 安裝
{"dependencies": {"@ohos/websocket": "2.1.0"}
}
💡 使用示例
import WebSocket from '@ohos/websocket';const ws = new WebSocket('wss://echo.websocket.org');ws.onopen = () => {console.log('WebSocket 連接成功');ws.send('Hello, HarmonyOS!');
};ws.onmessage = (event) => {console.log('收到消息:', event.data);
};ws.onerror = (event) => {console.error('WebSocket 錯誤:', event);
};ws.onclose = (code, reason) => {console.log(`連接關閉: code=${code}, reason=${reason}`);
};
? 建議封裝為 Service 類,并集成心跳保活機制。
二、UI 組件與交互
1.?@tdesign/arkui-harmonyos
?—— 企業級 UI 解決方案
由騰訊 TDesign 團隊維護,專為 HarmonyOS 設計的企業級 UI 組件庫,風格統一、文檔完善、支持暗黑模式。
? 特性
- 覆蓋按鈕、彈窗、表單、列表、導航等 50+ 組件
- 支持主題定制
- TypeScript 類型提示完善
- 開箱即用,適配 ArkUI
🔧 安裝
{"dependencies": {"@tdesign/arkui-harmonyos": "0.8.5"}
}
💡 使用示例
import { Button, Dialog } from '@tdesign/arkui-harmonyos';
import { Column } from '@arkui-x/components';@Entry
@Component
struct TDesignDemo {@State showDialog: boolean = false;build() {Column() {Button({ type: 'primary', content: '打開彈窗' }).onClick(() => this.showDialog = true)Dialog({title: '提示',content: '這是 TDesign 彈窗組件',visible: this.showDialog,onClose: () => this.showDialog = false})}.width('100%').padding(20)}
}
📌 推薦用于中后臺、管理類應用。
2.?@ohos/calendar
?—— 高性能日歷組件
支持單選、范圍選擇、節假日標注、自定義樣式等功能,適用于日程、打卡、預約類應用。
🔧 安裝
{"dependencies": {"@ohos/calendar": "3.2.1"}
}
💡 使用示例
import { Calendar } from '@ohos/calendar';
import { Column } from '@arkui-x/components';@Entry
@Component
struct CalendarDemo {@State selectedDate: Date = new Date();build() {Column() {Calendar({startDate: new Date(2024, 0, 1),endDate: new Date(2025, 11, 31),selectedDate: this.selectedDate,onSelect: (date: Date) => {this.selectedDate = date;console.log(`選中日期: ${date.toLocaleDateString()}`);}}).width('90%').height(400)}}
}
? 支持農歷、節氣顯示(需啟用對應配置)。
三、狀態管理
1.?@ohos/pinia
?—— 輕量級狀態管理庫
靈感來自 Vue 的 Pinia,專為 HarmonyOS 設計的狀態管理方案,API 簡潔,支持模塊化和類型推導。
? 特性
- 模塊化 Store 設計
- 支持?
actions
、getters
、state
- 與 TypeScript 深度集成
- 無 mutations,代碼更簡潔
🔧 安裝
{"dependencies": {"@ohos/pinia": "2.2.3"}
}
💡 使用示例
import { createPinia, defineStore } from '@ohos/pinia';// 創建全局狀態容器
const pinia = createPinia();// 定義用戶模塊
const useUserStore = defineStore('user', {state: () => ({name: 'HarmonyOS',age: 3}),getters: {doubleAge: (state) => state.age * 2},actions: {incrementAge() {this.age++;},updateName(newName: string) {this.name = newName;}}
});// 在組件中使用
@Component
struct UserInfo {private userStore = useUserStore(pinia); // 注入 storebuild() {Column() {Text(`姓名: ${this.userStore.name}`).fontSize(18)Text(`年齡: ${this.userStore.age}`)Text(`雙倍年齡: ${this.userStore.doubleAge}`)Button('增加年齡').onClick(() => this.userStore.incrementAge())}.padding(20)}
}
? 推薦用于中大型應用的狀態集中管理。
四、數據存儲
1.?@ohos/sqlite-orm
?—— ORM 數據庫操作
基于 SQLite 的對象關系映射庫,支持實體類注解、自動建表、CRUD 操作,適合結構化數據持久化。
🔧 安裝
{"dependencies": {"@ohos/sqlite-orm": "4.1.0"}
}
💡 使用示例
import { Database, Entity, Column, PrimaryGeneratedColumn } from '@ohos/sqlite-orm';@Entity('user')
class User {@PrimaryGeneratedColumn()id: number;@Column()name: string;@Column()age: number;
}// 初始化數據庫
const db = new Database({name: 'myApp.db',entities: [User],version: 1
});// 數據操作
async function dbOperations() {const repo = db.getRepository(User);// 插入const user = new User();user.name = 'Alice';user.age = 25;await repo.save(user);// 查詢全部const users = await repo.find();console.log('用戶列表:', users);// 條件查詢const adultUsers = await repo.find({ where: { age: { $gte: 18 } } });
}
? 適合存儲用戶信息、日志、緩存等復雜數據結構。
五、工具類
1.?@ohos/lodash
?—— 實用工具函數庫
Lodash 的 HarmonyOS 移植版,提供大量數組、對象、函數操作工具,提升編碼效率。
🔧 安裝
{"dependencies": {"@ohos/lodash": "4.17.21"}
}
💡 常用方法示例
import _ from '@ohos/lodash';// 數組去重
const unique = _.uniq([1, 2, 2, 3, 3, 3]); // [1, 2, 3]// 深拷貝
const obj = { a: 1, b: { c: 2 } };
const copy = _.cloneDeep(obj);// 防抖(適用于搜索框)
const search = _.debounce((query: string) => {console.log('執行搜索:', query);
}, 300);// 節流(適用于滾動事件)
const scrollHandler = _.throttle(() => {console.log('滾動中...');
}, 100);// 對象取值安全
const name = _.get(user, 'profile.info.name', '默認名稱');
? 推薦用于處理復雜數據結構或性能優化場景。
六、媒體與圖形
1.?@ohos/glide
?—— 圖片加載與緩存
仿 Android Glide 設計,支持網絡/本地圖片加載、內存+磁盤緩存、占位圖、錯誤圖、圓角裁剪等。
🔧 安裝
{"dependencies": {"@ohos/glide": "2.3.0"}
}
💡 使用示例
import { Glide } from '@ohos/glide';
import { Image } from '@arkui-x/components';@Component
struct ImageDemo {build() {Column() {Image().width(300).height(200).onAppear(() => {// 圖片加載Glide.with(this).load('https://picsum.photos/300/200').placeholder($r('app.media.placeholder')) // 占位圖資源.error($r('app.media.error')) // 加載失敗圖.circleCrop() // 圓形裁剪.into(this); // 綁定到當前 Image})}}
}
? 支持 GIF、WebP 等格式(需系統支持)。
? 總結:推薦組合方案
功能模塊 | 推薦庫 | 優勢說明 |
---|---|---|
網絡請求 | @ohos/axios | 語法熟悉,功能完整 |
實時通信 | @ohos/websocket | 原生封裝,穩定可靠 |
UI 組件 | @tdesign/arkui-harmonyos | 企業級,開箱即用 |
狀態管理 | @ohos/pinia | 輕量、類型友好 |
數據庫 | @ohos/sqlite-orm | ORM 提升開發效率 |
工具函數 | @ohos/lodash | 開發提效神器 |
圖片加載 | @ohos/glide | 緩存優化,體驗佳 |
📚 學習建議
- 優先使用官方推薦庫:通過?OHPM 三方庫中心?查看最新版本與兼容性。
- 注意權限聲明:網絡、存儲、相機等功能需在?
module.json5
?中申請對應權限。 - 結合 ArkUI 使用:所有 UI 庫均基于 ArkUI 構建,建議掌握?
@Component
、@State
?等基礎語法。 - 關注 TypeScript 支持:現代鴻蒙開發推薦使用 TS,提升類型安全。
📢 更新提示:本文內容基于 2025 年 8 月 1 日 的生態現狀整理,三方庫版本可能持續更新,請以 OHPM 官網 為準。
? 立即開始你的高效鴻蒙開發之旅吧!
📌 收藏本文,作為日常開發的“三方庫速查手冊”。