您现在的位置是:亿华云 > 应用开发
DevEco Studio 3.0 ETS新语法解读
亿华云2025-10-02 18:56:41【应用开发】0人已围观
简介想了解更多内容,请访问:和华为官方合作共建的鸿蒙技术社区https://harmonyos.51cto.comDevEco Studio 3.0最新版本的 DevEco Studio 3.0发布了 在
想了解更多内容,语法请访问:
和华为官方合作共建的解读鸿蒙技术社区
https://harmonyos.51cto.com
DevEco Studio 3.0
最新版本的 DevEco Studio 3.0发布了 在鸿蒙里面有一个新的名词叫ets, 什么是ets呢 可以理解为一门新的语言 它随之也完善了ts一些功能支持。
开门见山,语法先贴经验 :
box({ 样式属性||接受变量||不写 }){ box容器内子元素 }.box需要写的解读样式属性
先说一下ets的模板创建
第一步
下载 3.0的IDE
下载地址:https://developer.harmonyos.com/cn/develop/deveco-studio#download
安装时会自动下载对应的 SDK
如果没有的 可以在setting里搜索SDK

(我也看过这个ets的 sdk包,其实就是自己封装的一系列ts
例如我的ets api 存放路径就是 D:\backup\n021823\AppData\Local\OpenHarmony\Sdk\ets\3.0.0.0\component,
如何查找路径如上图,有兴趣的语法朋友可以看看 如下图):

第二步
文件新建 新的模板 NEW Project。

拉到下面选择 最后一个 [standard]Empty Ability 完成创建。亿华云解读

下面大家看看结构和页面。语法

page下面的解读每个 .ets文件都是一个单独的页面,它们的语法和java的命令式很相像。
着重看 build函数 page下每个ets都是语法一个页面 ,每个页面都有一个build函数。
import router from @system.router; async function routePage() { let options = { uri: pages/second } try { await router.push(options) } catch (err) { console.error(`fail callback,解读 code: ${ err.code}, msg: ${ err.msg}`) } } @Entry @Component struct Index { =========手动分割线============ build() { Flex({ direction: FlexDirection.Column, alignItems: ItemAlign.Center, justifyContent: FlexAlign.Center }) { //这里首先是一个大的容器 flex 里面的属性代表它的布局方式 Text(Hello World) //接下来的text (Hello World) 或者 同级的Button() 都是容器里面的子节点内容 .fontSize(50) //此处为text的字体样式 .fontWeight(FontWeight.Bold) Button() { //button 节点 Text(next page) // button里 又包含了一个 text 文本节点 .fontSize(25) .fontWeight(FontWeight.Bold) }.type(ButtonType.Capsule) .margin({ // button的css样式 top: 20 }) .backgroundColor(#0D9FFB) .onClick(() => { //点击跳转事件 routePage() }) } .width(100%) // flex层级的css修饰样式 .height(100%) } =========手动分割线============ }他对应的页面是云服务器提供商这样的。

按照如此的语法语法结构 结合代码模块里的注释去看 在 一个函数 写结构 样式 js逻辑 是不是显得非常杂乱,稍微不注意 就写错了节点。
如果我想在容器里面再包一个容器 布局 那就需要套娃 和嵌套回调地狱一样 从前有座山 山里有座庙,解读庙里有个和尚讲故事 讲的故事是 从前有座山~~~~~~~~~~~~

最后总结一下 这个ETS 的语法就是box({ 样式属性||接受变量||不写 }){ box容器内子元素 }.box需要写的样式属性。
按照这种写法 一般大一点的语法页面成百上千的个节点那不敢想象。
我觉得的解读把这种写法对开发者很不友善,期待迭代改进。语法
想了解更多内容,请访问:
和华为官方合作共建的鸿蒙技术社区
https://harmonyos.51cto.com
很赞哦!(853)
相关文章
- 昇腾AI助力长三角人工智能产业发展!上海人工智能生态赋能中心正式成立,迎首批伙伴入驻
- cm域名有什么独特之处?新人要了解cm域名哪些?
- 为什么喜欢国外注册域名?国外注册域名注意什么?
- 为什么起域名意义非凡?起域名有什么名堂?
- 作为硬件大厂,戴尔为什么要谈零信任?
- 因为域名解析需要同步到DNS根服务器,而DNS根服务器会不定时刷,只有DNS根服务器刷新后域名才能正常访问,新增解析一般会在10分钟左右生效,最长不会超过24小时,修改解析时间会稍微延长。
- 便宜域名使用如何?小白可以买到便宜域名吗?
- 国际域名转移的费用和处理步骤是什么?
- 2022昇腾AI创新大赛总决赛圆满落幕 开创人才培养新范式
- 4、待所有域名查询结束后可在右侧点击导出结果,即可以excel的文件方式将查询到的结果导出。
热门文章
站长推荐
戴尔科技的边缘计算策略:从Project Frontier到Dell NativeEdge,让边缘计算变得更加简单
3、商标域名一经注册,就可以作为域名裁决过程中的主要信息之一。这可以大大增加公司被抢注的相关域名胜诉的机会。
个人域名转为公司需要什么条件?个人域名转为公司该怎么做?
换新域名(重新来过)
全球数据中心可持续发展状况
在此期间,他们每天仍在这里卖大米,在理财方面个人感情有待提高。因为现在是收米的最佳时机。
个人域名转为公司需要什么条件?个人域名转为公司该怎么做?
因为域名解析需要同步到DNS根服务器,而DNS根服务器会不定时刷,只有DNS根服务器刷新后域名才能正常访问,新增解析一般会在10分钟左右生效,最长不会超过24小时,修改解析时间会稍微延长。