• Home
Name Date Size #Lines LOC

..--

AppScope/06-May-2025-3532

entry/06-May-2025-1,2781,157

har1/06-May-2025-377335

har2/06-May-2025-372331

harlibrary/06-May-2025-385343

hvigor/06-May-2025-3836

myHar/06-May-2025-355316

myHsp/06-May-2025-374340

screenshots/06-May-2025-

.gitignoreD06-May-2025133 1212

README.mdD06-May-20254 KiB11190

build-profile.json5D06-May-20251.9 KiB8685

code-linter.json5D06-May-2025958 3534

hvigorfile.tsD06-May-2025843 225

oh-package.json5D06-May-2025834 2624

ohosTest.mdD06-May-20253.4 KiB2725

README.md

1# ArkTS动态加载
2
3### 介绍
4
5动态import支持条件延迟加载,支持部分反射功能,可以提升页面的加载速度;动态import支持加载HSP模块/HAR模块/OHPM包/Native库等,并且HAR模块间只有变量动态import时还可以进行模块解耦
6
7本示例主要展示了动态加载的业务拓展场景介绍、动态加载常量表达式、动态加载变量表达式以及HAR模块间动态加载依赖解耦这些场景。该工程中展示的代码详细描述可查如下链接中业务扩展场景介绍部分。
8
9- [动态加载](https://docs.openharmony.cn/pages/v5.0/zh-cn/application-dev/arkts-utils/arkts-dynamic-import.md)
10
11### 效果预览
12
13| 执行结果图                                                   |
14| ------------------------------------------------------------ |
15| <img src="./screenshots/DynamicImport.png" style="zoom: 50%;" /> |
16
17### 使用说明
18
191. 运行Index主界面。
202. 页面呈现上述执行结果图效果,分别点击ListItem组件可以执行对应文本内容的操作,然后在控制台中打印出对应日志。
213. 运行测试用例DynamicImport.test.ets文件对页面代码进行测试可以全部通过。
22
23### 工程目录
24
25```
26entry/src/
27 ├── main
28 │   ├── ets
29 │   │   ├── entryability
30 │   │   ├── entrybackupability
31 │   │   ├── pages
32 │   │       ├── Index.ets               // 动态加载示例代码
33 │   ├── module.json5
34 │   └── resources
35 ├── ohosTest
36 │   ├── ets
37 │   │   └── test
38 │   │       ├── Ability.test.ets
39 │   │       ├── DynamicImport.test.ets  // 自动化测试代码
40 │   │       └── List.test.ets
41 har1                                    // har1模块函数实现
42 ├── src
43 │   ├── main
44 │   │   ├── ets
45 │   │   │   ├── utils
46 │   │   │   │   └── Calc.ets
47 │   │   │   └── components
48 │   │   │   │   └── MainPage.ets
49 har2                                    // har1模块函数实现
50 ├── src
51 │   ├── main
52 │   │   ├── ets
53 │   │   │   ├── utils
54 │   │   │   │   └── Calc.ets
55 │   │   │   └── components
56 │   │   │   │   └── MainPage.ets
57 ├── index.ets
58 harlibrary                              // harlibrary模块函数实现
59 ├── src
60 │   ├── main
61 │   │   ├── ets
62 │   │   │   ├── utils
63 │   │   │   │   └── Calc.ets
64 │   │   │   └── components
65 │   │   │   │   └── MainPage.ets
66 ├── index.ets
67 myHar                                    // myHar模块函数实现
68 ├── src
69 │   ├── main
70 │   │   ├── ets
71 │   │   │   └── components
72 │   │   │   │   └── MainPage.ets
73 ├── index.ets
74 myHsp                                    // myHsp模块函数实现
75 ├── src
76 │   ├── main
77 │   │   ├── ets
78 │   │   │   ├── pages
79 │   │   │   │   └── Index.ets
80 │   │   │   └── utils
81 │   │   │   │   └── Calc.ets
82 ├── index.ets
83```
84
85### 相关权限
86
87不涉及。
88
89### 依赖
90
91不涉及。
92
93### 约束与限制
94
951.本示例仅支持标准系统上运行, 支持设备:RK3568。
96
972.本示例为Stage模型,支持API14版本SDK,版本号:5.0.2.57,镜像版本号:OpenHarmony_5.0.2.58。
98
993.本示例需要使用DevEco Studio 5.0.1 Release (Build Version: 5.0.5.306, built on December 6, 2024)及以上版本才可编译运行。
100
101### 下载
102
103如需单独下载本工程,执行如下命令:
104
105````
106git init
107git config core.sparsecheckout true
108echo code/DocsSample/ArkTs/ArkTSRuntime/ArkTSModule/DynamicImport > .git/info/sparse-checkout
109git remote add origin https://gitee.com/openharmony/applications_app_samples.git
110git pull origin master
111````