当前位置: 首页 > news >正文

HarmonyOS 应用开发——入门

首先当然是华为的官方文档了,要认真学习:
https://developer.huawei.com/consumer/cn/doc/harmonyos-guides-V2/start-overview-0000001478061421-V2
不想花时间看,可以看我下面总结的干货,哈哈
第一个问题:stage架构和fa架构的区别?

FA(Feature Ability)模型:HarmonyOS早期版本开始支持的模型,已经不再主推。Stage模型:HarmonyOS 3.1 Developer Preview版本开始新增的模型,是目前主推且会长期演进的模型。在该模型中,由于提供了AbilityStage、WindowStage等类作为应用组件和Window窗口的“舞台”,因此称这种应用模型为Stage模型。
Stage模型与FA模型最大的区别在于:Stage模型中,多个应用组件共享同一个ArkTS引擎实例;而FA模型中,每个应用组件独享一个ArkTS引擎实例。因此在Stage模型中,应用组件之间可以方便的共享对象和状态,同时减少复杂应用运行对内存的占用。Stage模型作为主推的应用模型,开发者通过它能够更加便利地开发出分布式场景下的复杂应用。

在这里插入图片描述

第二个问题:管理组件拥有的状态有哪些?
@State 状态变量,一旦变量拥有了状态属性,就和自定义组件的渲染绑定起来。当状态改变时,UI会发生对应的渲染改变
@Prop 单向传递 不往父组件传递
@Link 子组件中被@Link装饰的变量与其父组件中对应的数据源建立双向数据绑定(只要是父组件引用了带有@link属性的)
@Provide/@Consume装饰的状态变量有以下特性:

@Provide装饰的状态变量自动对其所有后代组件可用,即该变量被“provide”给他的后代组件。由此可见,@Provide的方便之处在于,开发者不需要多次在组件之间传递变量。
后代通过使用@Consume去获取@Provide提供的变量,建立在@Provide和@Consume之间的双向数据同步,与@State/@Link不同的是,前者可以在多层级的父子组件之间传递。
@Provide和@Consume可以通过相同的变量名或者相同的变量别名绑定,变量类型必须相同

上文所述的装饰器仅能观察到第一层的变化,但是在实际应用开发中,应用会根据开发需要,封装自己的数据模型。对于多层嵌套的情况,比如二维数组,或者数组项class,或者class的属性是class,他们的第二层的属性变化是无法观察到的。这就引出了@Observed/@ObjectLink装饰器。
@ObjectLink和@Observed类装饰器用于在涉及嵌套对象或数组的场景中进行双向数据同步:

被@Observed装饰的类,可以被观察到属性的变化;
子组件中@ObjectLink装饰器装饰的状态变量用于接收@Observed装饰的类的实例,和父组件中对应的状态变量建立双向数据绑定。这个实例可以是数组中的被@Observed装饰的项,或者是class object中的属性,这个属性同样也需要被@Observed装饰。
单独使用@Observed是没有任何作用的,需要搭配@ObjectLink或者@Prop使用。
http://www.lryc.cn/news/343980.html

相关文章:

  • 开源免费的发票识别OCR应用:Invoice
  • 关于Docker alpine
  • 【Elasticsearch运维系列】Elasticsearch7.12.1启动指定版本JDK:你学废了吗?
  • 思通数科大模型在智能数据查询系统中的深度应用:销售数据分析的革新
  • 上位机图像处理和嵌入式模块部署(树莓派4b和qt应用全屏占有)
  • QT:QT窗口(一)
  • matlab例题大全
  • SwiGLU激活函数
  • MySQL慢查询优化
  • 开源数据可视化大屏对接表单数据实践!
  • 08.图形化界面字体问题处理
  • 【代码随想录算法训练营第37期 第二天 | LeetCode977.有序数组的平方、209.长度最小的子数组、59.螺旋矩阵II】
  • Java:Servlet详解
  • Oracle存储过程怎么定义类并继承
  • 14_Scala面向对象编程_属性
  • 什么是网页反作弊
  • MAVEN打包JAR启动执行manifest
  • JavaEE 多线程详细讲解(1)
  • 数据分析从入门到精通 1.numpy剑客修炼
  • 【iOS】KVO
  • python json字符串怎么用format方法填充参数值报KeyError
  • C++新手村指南:入门基础
  • 智慧旅游推动旅游服务智慧化转型:借助智能科技的力量,实现旅游资源的精准匹配和高效利用,为游客提供更加便捷、舒适的旅游环境
  • Hikyuu-PF-银行股轮动交易策略实现
  • 【氮化镓】GaN功率器件在转换器设计中的挑战
  • DOTA-Gly-Asp-Tyr-Met-Gly-Trp-Met-Asp-Phe-NH2,1306310-00-8,是一种重要的多肽化合物
  • CopyClip for Mac - 高效复制粘贴,轻松管理剪贴板
  • [windows系统安装/重装系统][step-1]U盘启动盘制作,微软官方纯净系统镜像下载
  • AI换脸原理(4)——人脸对齐(关键点检测)参考文献2DFAN:代码解析
  • Sarcasm detection论文解析 |使用 BERT 进行中间任务迁移学习的刺检测