文档开发者中心
我的
|

HarmonyOS 6

怎么加载动态JS

已解决

鸿蒙不支持动态JS我现在是用通用适配器加载JS实现动态获取但是老感觉有点加载慢有啥办法优化

cke_3705.png

点赞
收藏
回复
2
分享
举报
浏览157 发布于2026-05-30 04:02云南
全部评论
最多点赞
最新发布
最早发布
|
采纳答复

如果你说的是 ArkTS/HarmonyOS 应用侧的“运行时动态加载业务逻辑”,建议不要按 Web 里的 eval/远程 JS 执行思路做。ArkTS 侧更推荐两类方式:

1. 已随应用打包的模块:用 lazy import 或 await import(),把非首屏、非冷启动必需的模块延迟到真正使用时再加载。

2. native/so 或重模块:避免静态 import 放在冷启动路径里,用户触发功能时再 await import('xxx.so') 或加载对应模块。

如果你现在的“通用适配器加载 JS”慢,通常慢在三块:运行时解析、桥接调用、首屏同步等待。优化思路是:

- 首屏不要同步等动态模块,先展示基础页面;

- 模块按业务拆小,别把一大包通用逻辑一次加载;

- 对会高频使用的模块做内存缓存,避免每次重新解析/初始化;

- 可预测的场景在空闲时预加载,例如页面进入后 setTimeout/后台任务预热;

- 如果是纯 H5 逻辑,放 Web 组件里执行会比 ArkTS 侧模拟 JS 运行环境更自然。

一句话:ArkTS 里可以做“动态加载模块”,但不建议做“任意动态 JS 执行”。前者用 lazy import / await import 优化,后者容易慢,也会带来安全和审核风险。

2楼回复于2026-05-30 08:22 来自四川

你指的是 动态加载-ArkTS模块化 这个吗?

1楼回复于2026-05-30 05:50 来自广西
写回答
新增插入模板功能
一键使用模板,快速填写内容,轻松发帖~
知道了
  • 为了保障您的信息安全,请勿上传您的敏感个人信息(如您的密码等信息)和您的敏感资产信息(如关键源代码、签名私钥、调试安装包、业务日志等信息),且您需自行承担由此产生的信息泄露等安全风险。
  • 如您发布的内容为转载内容,请注明内容来源。

我要提问题

了解社区公约,与您携手共创和谐专业的开发者社区。