鸿蒙面试浪潮来袭,你是否也想着利用这次机会去实现,跳槽涨薪的梦呢?
如果关注了华为鸿蒙的人应该知道:鸿蒙开发岗位需求飙升6倍! 可想而知该岗位前景多么广阔,为此就为大家整理些(鸿蒙HarmonyOS)开发岗位面试题。
面试题目
以下问题是在面试过程中实际遇到的
1. 页面和组件的生命周期,及其流程
2. @Entry 装饰的页面和 Navigation 组件里的页面,有什么区别
- @Entry 装饰的页面
- 定义:是一个基本的页面,每一个页面都需要在 main_page.json 中声明
- 路由:这种页面是路由的起点,通常用于展示应用的入口
- 生命周期:具有通用的生命周期方法,如 @Entry 修饰的页面中的通用方法
- Navigation 组件
- 定义:是一个导航容器,挂载在单个页面下
- 路由:支持跨模块的动态路由,通过自定义路由表或系统路由表实现页面的跳转
- 页面结构:由标题栏、内容区和工具栏组成,支持页面的路由能力和多种显示模式
- 显示模式:可以设置为单页显示或分栏显示模式,适应不同设备尺寸
3. 常用的状态装饰器有哪些
分类 内容 管理组件拥有的状态 @State装饰器 组件内状态 @Prop装饰器 父子单向同步 @Link装饰器 父子双向同步 @Provide装饰器和@Consume装饰器 与后代组件双向同步 @Observed装饰器和@ObjectLink装饰器 嵌套类对象属性性变化 一般回答上面这几个就够了 管理应用拥有的状态 LocalStorage 页面级UI状态存储 AppStorage 应用全局的UI状态存储 PersistentStorage 持久化存储UI状态 其他状态管理 @Watch装饰器 状态变量更改通知 $$语法 内置组件双向同步 @Track装饰器 class对象属性级更新
4. 常用的动画有哪些
- 一、组件的属性动画
- 二、页面间的转场动画
- 三、lolita 库加载动画资源文件
5. ArkTs 和 Ts 有什么区别
ArkTs 基于 Ts 做了扩展,并且强化了静态检查和分析
- 一、扩展了 UI:
- 定义了声明式 UI 描述、自定义组件,事件方法、属性方法
- 提供了多维度的状态管理机制