• Home
Name Date Size #Lines LOC

..--

AppScope/22-Oct-2025-3532

entry/22-Oct-2025-1,3221,199

har1/22-Oct-2025-381339

har2/22-Oct-2025-376335

harlibrary/22-Oct-2025-389347

hvigor/22-Oct-2025-3836

myHar/22-Oct-2025-357318

myHsp/22-Oct-2025-376342

screenshots/22-Oct-2025-

.gitignoreD22-Oct-2025133 1212

README.mdD22-Oct-20254.5 KiB124102

build-profile.json5D22-Oct-20251.9 KiB8685

code-linter.json5D22-Oct-2025958 3534

hvigorfile.tsD22-Oct-2025843 225

oh-package.json5D22-Oct-2025834 2624

ohosTest.mdD22-Oct-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 │   ├── cpp
29 │   │   ├── types
30 │   │   │   ├── libentry
31 │   │   │   │   ├── Index.d.ts          // 提供JS侧的接口方法
32 │   │   │   │   ├── oh-package.json5 	 // 将index.d.ts与cpp文件关联
33 │   │   ├── CMakeLists.txt              // 配置CMake打包参数
34 │   │   ├── napi_init.cpp
35 │   ├── ets
36 │   │   ├── entryability
37 │   │   ├── entrybackupability
38 │   │   ├── pages
39 │   │   │   ├── Index.ets               // 动态加载示例代码
40 │   │   │   └── Calc.ets
41 │   │   ├── utils
42 │   │       └── Calc.ets
43 │   │   ├── Calc.ets
44 │   ├── module.json5
45 │   └── resources
46 ├── ohosTest
47 │   ├── ets
48 │   │   └── test
49 │   │       ├── Ability.test.ets
50 │   │       ├── DynamicImport.test.ets  // 自动化测试代码
51 │   │       └── List.test.ets
52 har1                                    // har1模块函数实现
53 ├── src
54 │   ├── main
55 │   │   ├── ets
56 │   │   │   ├── utils
57 │   │   │   │   └── Calc.ets
58 │   │   │   └── components
59 │   │   │   │   └── MainPage.ets
60 ├── Index.ets
61 har2                                    // har2模块函数实现
62 ├── src
63 │   ├── main
64 │   │   ├── ets
65 │   │   │   ├── utils
66 │   │   │   │   └── Calc.ets
67 │   │   │   └── components
68 │   │   │   │   └── MainPage.ets
69 ├── Index.ets
70 harlibrary                              // harlibrary模块函数实现
71 ├── src
72 │   ├── main
73 │   │   ├── ets
74 │   │   │   ├── utils
75 │   │   │   │   └── Calc.ets
76 │   │   │   └── components
77 │   │   │   │   └── MainPage.ets
78 ├── Index.ets
79 myHar                                    // myHar模块函数实现
80 ├── src
81 │   ├── main
82 │   │   ├── ets
83 │   │   │   └── components
84 │   │   │   │   └── MainPage.ets
85 ├── Index.ets
86 myHsp                                    // myHsp模块函数实现
87 ├── src
88 │   ├── main
89 │   │   ├── ets
90 │   │   │   ├── pages
91 │   │   │   │   └── Index.ets
92 │   │   │   └── utils
93 │   │   │   │   └── Calc.ets
94 ├── Index.ets
95```
96
97### 相关权限
98
99不涉及。
100
101### 依赖
102
103不涉及。
104
105### 约束与限制
106
1071.本示例仅支持标准系统上运行, 支持设备:RK3568。
108
1092.本示例为Stage模型,支持API20版本SDK,版本号:6.0.0.34,镜像版本号:OpenHarmony_6.0.0.34。
110
1113.本示例需要使用DevEco Studio 6.0.0及以上版本才可编译运行。
112
113### 下载
114
115如需单独下载本工程,执行如下命令:
116
117```
118git init
119git config core.sparsecheckout true
120echo code/DocsSample/ArkTS/ArkTSRuntime/ArkTSModule/DynamicImport > .git/info/sparse-checkout
121git remote add origin https://gitee.com/openharmony/applications_app_samples.git
122git pull origin master
123```
124