• Home
Name Date Size #Lines LOC

..--

figures/12-May-2024-

frameworks/12-May-2024-123,66392,104

interfaces/inner_api/builtin/12-May-2024-1,315346

test/12-May-2024-31,63423,880

.clang-formatD12-May-20246.8 KiB161160

.gitignoreD12-May-2024233 1311

LICENSED12-May-202410.1 KiB177150

README.mdD12-May-20242.9 KiB7845

README_zh.mdD12-May-20243 KiB7745

ace_lite.gniD12-May-202410.3 KiB210203

bundle.jsonD12-May-20241.6 KiB6867

README.md

1# JS UI Framework<a name="EN-US_TOPIC_0000001125689015"></a>
2
3-   [Introduction](#section11660541593)
4-   [Directory Structure](#section1464106163817)
5-   [Available APIs](#section1096322014288)
6-   [Usage](#section1096366014288)
7-   [Repositories Involved](#section11683135113011)
8
9## Introduction<a name="section11660541593"></a>
10
11The JS UI framework is a set of JS-UI frameworks provided for you to develop OpenHarmony applications on mini system. The following figure shows the framework architecture.
12
13**Figure  1**  Framework architecture<a name="fig11520531310"></a>
14
15![](figures/framework-architecture.png "framework-architecture")
16
17The JS UI framework consists of the JavaScript data binding framework, JavaScript runtime, and JavaScript framework.
18
19-   **JavaScript data binding framework**
20
21    Provides a set of basic data binding capabilities through JavaScript.
22
23
24-   **JavaScript runtime**
25
26    Supports parsing and execution of JavaScript code.
27
28
29-   **JavaScript framework**
30
31    Provides the framework mechanism of JavaScript APIs and components through the C++ language.
32
33
34## Directory Structure<a name="section1464106163817"></a>
35
36The source code of the framework is stored in  **/foundation/arkui/arkui\_ace\_engine\_lite**. The directory structure is as follows:
37
38```
39/foundation/arkui/arkui_ace_engine_lite
40├── frameworks         # Framework code
41│   ├── common         # Common kits
42│   ├── examples       # Sample code
43│   ├── include        # Header files
44│   ├── module_manager # JS module manager
45│   ├── native_engine  # JS engine adapter
46│   ├── packages       # JavaScript implementation
47│   ├── src            # Source code
48│   ├── targets        # Configuration files of target devices
49│   └── tools          # Tool code
50├── interfaces         # APIs exposed externally
51│   └── innerkits      # Header files for internal subsystems
52│       └── builtin    # JavaScript third-party module APIs exposed by the JS UI framework
53└── test               # Test cases
54```
55
56## Available APIs<a name="section1096322014288"></a>
57
58For details about the APIs, see the  [JS Application Development](https://device.harmonyos.com/en/docs/apiref/js-framework-file-0000000000616658).
59
60
61
62## Usages<a name="section1096366014288"></a>
63
64- Application Development
65
66  Please refer to [Visual Application Development](https://docs.openharmony.cn/pages/v3.1/en/device-dev/guide/device-camera-visual-overview.md/) for more application development details.
67
68- Framework Development
69
70  For development action on the JS UI framework itself,  please refer to [The Framework Debugging Tool](https://gitee.com/openharmony/arkui_ace_engine_lite/blob/master/frameworks/tools/qt/simulator/README_zh.md), this tool provides one small PC simulator debugging environment, which can be used for framework code development.
71
72
73
74## Repositories Involved<a name="section11683135113011"></a>
75
76**arkui_ace_engine_lite**
77
78

README_zh.md

1# JS-UI框架子系统组件<a name="ZH-CN_TOPIC_0000001125689015"></a>
2
3-   [简介](#section11660541593)
4-   [目录](#section1464106163817)
5-   [接口](#section1096322014288)
6-   [使用](#section11683166113011)
7-   [相关仓](#section11683135113011)
8
9## 简介<a name="section11660541593"></a>
10
11轻量系统**JS-UI框架子系统**,是OpenHarmony为开发者提供的一套开发OpenHarmony应用的JS-UI框架,部署在轻量系统上,为应用提供UI开发能力。其组成如下所示:
12
13**图 1**  JS-UI框架子系统<a name="fig11520531310"></a>
14![](figures/JS-UI框架子系统.png "JS-UI框架子系统")
15
16JS-UI框架子系统包括JS数据绑定框架(JS Data binding)、JS运行时(JS runtime)和JS框架(JS framework)。
17
18-   **JS Data binding**
19
20    JS数据绑定框架使用JavaScript语言提供一套基础的数据绑定能力。
21
22
23-   **JS runtime**
24
25    JS运行时用以支持JS代码的解析和执行。
26
27
28-   **JS framework**
29
30    JS框架部分使用C++语言提供JS API和组件的框架机制。
31
32
33## 目录<a name="section1464106163817"></a>
34
35JS-UI框架子系统源代码在/foundation/arkui/arkui\_ace\_engine\_lite下,目录结构如下图所示:
36
37```
38/foundation/arkui/arkui_ace_engine_lite
39├── frameworks         # 框架代码目录
40│   ├── common         # 公共工具类目录
41│   ├── examples       # 示例代码目录
42│   ├── include        # 头文件目录
43│   ├── module_manager # JS模块管理类目录
44│   ├── native_engine  # JS引擎适配层目录
45│   ├── packages       # 框架JS实现存放目录
46│   ├── src            # 源代码存放目录
47│   ├── targets        # 各目标设备配置文件存放目录
48│   └── tools          # 工具代码存放目录
49├── interfaces         # 对外接口存放目录
50│   └── innerkits      # 对内部子系统暴露的头文件存放目录
51│       └── builtin    # JS-UI框架子系统对外暴露JS三方module API接口存放目录
52└── test               # 测试用例目录
53```
54
55## 接口<a name="section1096322014288"></a>
56
57API介绍请参考[《OpenHarmony Device开发API参考》](https://device.harmonyos.com/cn/docs/develop/apiref/js-framework-file-0000000000611396),其中涵盖应用开发的一些基本信息,包括应用的构成以及所支持的JS-UI组件和接口说明。
58
59
60
61## 使用<a name="section11683166113011"></a>
62
63- 为轻量系统开发三方应用
64
65  可参考[《轻量系统设备视觉应用开发》](https://docs.openharmony.cn/pages/v3.1/zh-cn/device-dev/guide/device-camera-visual-overview.md/)指南了解应用的开发细节。
66
67- 调试轻量JS-UI开发框架
68
69  为了方便地调试框架本身,提供了PC上的模拟调测工程,基于QT搭建,请参考[《框架调试模拟器使用说明》](https://gitee.com/openharmony/arkui_ace_engine_lite/blob/master/frameworks/tools/qt/simulator/README_zh.md)70
71
72
73## 相关仓<a name="section11683135113011"></a>
74
75**arkui_ace_engine_lite**
76
77