Skip to content

1. 自我介绍

2. 项目中用的路由跳转

路由跳转有两种方案 router 和 Navigation ,目前推荐使用 Navigation 。因为

  1. router最多页面栈为32个,Navigation 无限制
  2. Navigation 支持一多开发,Auto模式自适应单栏跟双栏显示
  3. Navigation 支持获取指定页面参数
  4. Navigation 清理指定路由
  5. Navigation 支持路由拦截

3. NavPathStack对象是怎么传递的?

主要有两种方式

  1. 通过 @provide和@consume进行传递
  2. 如果不是组件使用 NavPathStack,那么就不能使用以上的装饰器了。这个时候我们可以将 NavPathStack 封装在一个单独的文件中,通过导入导出来共享使用

4. 讲一下hap、hsp、har三个包的区别

HarmonyOS中有三种类型的包:HAP(HarmonyOS Ability Package)、HAR(Harmony Archive)、HSP(Harmony Shared Package)。

  1. HAP是应用安装和运行的基本单元,分为entry和feature两种类型。
  2. HAR是静态共享包,用于代码和资源的共享。
  3. HSP是动态共享包,用于应用内共享代码和资源。

5. hsp里面可以写页面吗?

可以

6. features层也不一定要用Hsp,也可以用har去设计(为什么要用Hsp+Har设计)

HAR是静态共享包,用于代码和资源的共享。一般使用HAR的前提是,这个模块的功能不仅仅是提供给当前项目使用,可能还会提供给另一个项目使用。比如京东登录,京东金融可以使用、京东读书也可以使用。那么就可以考虑使用har了。

7. 讲一下项目中的数据存储

8. PersistentStorage能存对象吗?

9. preference在存储在本地的文件是以什么为单位

10. 讲一下LazyForeach

11. lazyforeach的第三个参数是什么

12. lazyforeach的key是怎么生成的

13. 深层次数据怎么刷新

14. 讲一下页面的生命周期

15. aboutToAppear在什么时候执行?

16. 加入了@Reusable之后会多出哪两个生命周期

17. Navigation的生命周期是?

Released under the MIT License.