HarmonyOS 鸿蒙Next页面不能继承,怎么实现一些所有页面公共需要做的事情

发布于 1周前 作者 songsunli 来自 鸿蒙OS

HarmonyOS 鸿蒙Next页面不能继承,怎么实现一些所有页面公共需要做的事情

问题描述:

页面不能继承,怎么实现一些所有页面公共需要做的事情。

4 回复

解决方案:

公共逻辑可以抽象成公共方法,页面部分可以抽象成自定义子组件或者全局Builder,在需要使用的页面引入方法或UI

例如登录后所有的页面都要在onPageShow执行一个中间件逻辑。不能继承要如何实现这个功能。把代码快封装到一个类的方法,然后每个页面都在onPageShow调用吗?

只能这样, 垃圾声明式ui. 不能以完整对象概念去理解

在HarmonyOS中,如果Next页面(假设为自定义页面)无法直接继承某些特性或方法来实现公共逻辑,你可以考虑以下几种方式来实现所有页面公共需要做的事情:

  1. 使用服务(Service):创建一个服务来封装公共逻辑,各页面通过服务接口调用。
  2. 全局变量或单例模式:使用全局变量或实现单例模式来共享数据和逻辑。
  3. 抽象基类或接口:如果可能,设计一个包含公共逻辑的抽象基类或接口,让需要这些功能的页面继承或实现。
  4. 事件总线(Event Bus):通过事件总线机制,各页面可以监听和发送事件,实现解耦的通信。

如果问题依旧没法解决请加我微信,我的微信是itying888。

回到顶部