HarmonyOS 鸿蒙Next怎么在Library中添加page 并在其他模块中跳转打开

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

HarmonyOS 鸿蒙Next怎么在Library中添加page 并在其他模块中跳转打开 在进行模块化拆分后,不同的业务module对应着不用的用户页面,在HarmonyOS中Page是表示应用/服务的一个前台页面,那么在Library对应的module中怎么添加page并注册,然后在其他module中打开

4 回复

页面的共享现在是支持的,引用har中的页面可以参考:https://developer.huawei.com/consumer/cn/doc/harmonyos-guides-V5/arkts-routing-V5#命名路由

引用hsp可用命名路由,也可用@bundle特定写法,改写法在字符串传参中:https://developer.huawei.com/consumer/cn/doc/harmonyos-guides-V5/in-app-hsp-V5

一般的使用方式有两种,通过router做路由跳转,或者通过window.loadcontent直接加载。

更多关于HarmonyOS 鸿蒙Next怎么在Library中添加page 并在其他模块中跳转打开的实战系列教程也可以访问 https://www.itying.com/category-93-b0.html


可以试下路由跳转:https://developer.huawei.com/consumer/cn/doc/harmonyos-references-V5/js-apis-arkui-uicontext-V5#pushnamedroute

定义页面名称:

@Entry({
 routeName: 'xxPage'
})
@Component
struct xxPage{}

跳转方调用

router.pushNamedRoute({
 name: 'xxPage',
 params: {

 }
}, router.RouterMode.Standard, (err) => {
 if (err) {
   //router跳转失败,一般会在此处回调
 }
})

这些页面可以定义在其他的feature HAP中或者HSP中。

如果是feature HAP中可以通过ability的跳转来实现路由到feature HAP中的页面。

如果是HSP就要建立依赖,根据HSP路由规则来访问HSP的页面。

在HarmonyOS鸿蒙系统中,若想在Library中添加一个Page并在其他模块中跳转打开,可以按照以下步骤进行:

  1. 在Library中定义Page:

    • 创建一个新的Ability(Page)类,继承自Ability或相关的UI组件类。
    • config.json文件中注册这个Ability,包括其路径和相关信息。
  2. 实现Page逻辑:

    • 在新建的Page类中实现页面布局和逻辑。可以使用XML布局文件或直接在代码中定义UI。
  3. 在其他模块中引用Library:

    • 确保其他模块的项目配置文件(如build.gradle)中添加了Library的依赖。
  4. 实现跳转逻辑:

    • 在需要跳转的地方,使用Intent携带目标Page的信息。
    • 调用startAbility方法启动目标Page。例如:
      Intent intent = new Intent();
      OperationBundle operation = new OperationBundle();
      operation.withParam("key", "value"); // 可选,传递参数
      intent.setElement(new ElementName("com.example.library", "com.example.library.YourPageAbility"));
      intent.setOperationBundle(operation);
      startAbility(intent);
      
  5. 确保权限和资源正确配置:

    • 检查并配置必要的权限和资源访问权限,确保Page能够正常显示和交互。

如果问题依旧没法解决请联系官网客服,官网地址是 https://www.itying.com/category-93-b0.html

回到顶部