全面理解 HarmonyOS NEXT 的应用代码结构

IT全栈视野
• 阅读 502

HarmonyOS NEXT 的应用代码结构通常包含以下几个主要部分: entry 目录:这通常是应用的入口点,包含了应用的主要页面或功能模块的代码。 pages 目录:存放各个页面的代码文件,每个页面可能有自己的 .js(逻辑)、.css(样式)和 .hml(布局)文件。 common 目录:用于存放公共的代码模块,例如工具函数、常量定义等,可被多个页面或模块复用。 config.json 文件:应用的配置文件,包括应用的名称、图标、权限等信息,以及页面的路由配置。 module.json 文件(如果有):模块相关的配置,例如模块的依赖等。 在代码文件中,.hml 文件用于定义页面的布局结构,使用类似 HTML 的语法。.css 文件用于定义页面的样式。.js 文件则处理页面的逻辑,包括数据获取、事件处理等。

├──entry/src/main
│  ├──cpp                                // C++代码区
│  │  ├──types                           // 接口存放目录
│  │  │  └──libentry            
│  │  │     ├──index.d.ts                // 接口文件
│  │  │     └──oh-package.json5          // 接口注册配置文件
│  │  ├──CMakeLists.txt                  // CMake打包配置文件
│  │  └──hello.cpp                       // C++源代码 
│  ├──ets                                // ets代码区 
│  │  ├──common
│  │  │  ├──constants
│  │  │  │  ├──CommonConstants.ets       // 常量类
│  │  │  │  └──StyleConstants.ets        // 格式常量类
│  │  │  ├──data
│  │  │  │  └──SourceData.ets            // 数据源
│  │  │  └──utils
│  │  │     ├──CommonUtils.ets           // 数据操作工具类
│  │  │     ├──GlobalContext.ets         // 全局上下文工具类
│  │  │     ├──Logger.ets                // 日志打印工具类
│  │  │     └──MultipleDevicesUtils.ets  // 媒体查询工具类
│  │  ├──entryability
│  │  │  └──EntryAbility.ets             // 程序入口类
│  │  ├──pages
│  │  │  ├──LoginPage.ets                // 登录页面
│  │  │  └──MainPage.ets                 // 主页面
│  │  ├──view
│  │  │  ├──HomePage.ets                 // 自定义首页组件
│  │  │  └──MinePage.ets                 // 自定义我的组件
│  │  └──viewmodel
│  │     ├──ItemData.ets                 // 数据源类
│  │     └──MainViewModel.ets            // 主界面视图Model
│  └──resources                          // 资源文件目录
└──entry/src/ohosTest
   ├──ets                                // 测试代码区
   │  ├──test                            
   │  │  ├──Ability.test.ets             // Ability单元测试
   │  │  ├──List.test.ets                // 集成测试类
   │  │  └──LoginFunction.test.ets       // 登录校验单元测试
   │  ├──testability
   │  │  ├──pages
   │  │  │  └──Index.ets                 // 测试程序首页
   │  │  └──TestAbility.ets              // 测试程序入口类
   │  └──testrunner
   │     └──OpenHarmonyTestRunner.ts     // 测试运行类
   └──resources                          // 测试资源文件目录

希望以上的解读对您理解 HarmonyOS NEXT 的应用代码结构有所帮助。

点赞
收藏
评论区
推荐文章
微信小程序部分api 会触发 onShow onHide
解决部分api触发小程序onShowonHide首先要明白微信小程序的onShow()onHide()分为页面级的和应用级的,应用级的就是app.js里面的那几个,页面级的就是pages里的当使用了下列api时,均会触发页面级和应用级的onShowonHide1.点击右上角小圆点关闭小程序。2.图片预览:wx.preview
菜园前端 菜园前端
1年前
什么是HTML语义化?
原文链接:什么是语义化?简单了来说就是,当网页去掉CSS样式时,页面能呈现出来清晰的结构。语义化的核心作用:提升代码可读性,便于团队开发和维护。以下是语义化的HTML标签结构(部分语义化标签):假设我要编写一个这样的布局不使用语义化是这样的使用语义化是这样
Stella981 Stella981
3年前
JeePlus:代码结构
ylbtechJeePlus:代码结构1.返回顶部1、代码结构1.文件结构1.1.源码目录src/main/javacom.jeeplusJeeplus目录录├common公共模块存放目录│├SMS短信工具类具类│├
Wesley13 Wesley13
3年前
CSS3的基础知识学习(二)
前言:CSS主要是用来修饰标签的样式、使得网页更加美观,其实css的引用有三种方式,但主要是使用链接引用,意思就是我们写一个.css的文件,将样式修饰的控制代码写在这里面,这样控制起来方便快捷。对于CSS的学习,知识点中最重要的部分就是属性和选择器,其次还有页面布局和盒子模型,下面进行学习以及代码效果演示。一、CSS的三种引入
Stella981 Stella981
3年前
Mybatis源码学习(一)
一、对源码先上一个结构图:!(http://static.oschina.net/uploads/space/2014/0722/073928_N712_1458864.png)源代码主要在org.apache.ibatis目录下,18个包,其中在应用中主要的包有:builder、session、cache、type、transaction、da
Stella981 Stella981
3年前
Amcharts插件实现柱状图+折线图+单个主题
1.需要引用封装好的amcharts.js文件和css样式表;2.在页面上创建一个div容器存放折线图;3.引用一个自定义主题js注意:     在页面的head部分我们需要添加amChartsJavaScript库文件的引用。由于V3amCharts库被拆分成了几个文件,为了节省几个kb空间—你需要添加amchart.js主文
小万哥 小万哥
1年前
Go 语法
一个Go文件包含以下几个部分:包声明导入包函数语句和表达式看下面的代码,更好地理解它:例子Gopackagemainimport"fmt"funcmain()fmt.Println("HelloWorld!")例子解释第1行:在Go中,每个程序都是一个包的
小万哥 小万哥
12个月前
Go 语言基础:包、函数、语句和注释解析
一个Go文件包含以下几个部分:包声明导入包函数语句和表达式看下面的代码,更好地理解它:例子gopackagemainimport"fmt"funcmain()fmt.Println("HelloWorld!")例子解释第1行:在Go中,每个程序都是一个包的
京东云开发者 京东云开发者
1个月前
Taro 鸿蒙技术内幕系列(二):如何让 W3C 标准的 CSS跑在鸿蒙上
作者:京东零售马银涛基于Taro打造的京东鸿蒙APP已跟随鸿蒙Next系统公测,本系列文章将深入解析Taro如何实现使用React开发高性能鸿蒙应用的技术内幕背景HarmonyOS采用自研的ArkUI框架作为原生UI开发方案,这套方案有完善的布局系统和样式
IT全栈视野
IT全栈视野
Lv1
我的微信公众号:IT全栈视野 与你分享更多见闻知识。
文章
13
粉丝
2
获赞
2