原先的struct A1变成了在A1文件里面的function harBuilder,这时我原先的A1要怎么处理?

根据

https://developer.huawei.com/consumer/cn/doc/harmonyos-guides/application-navigation-design-0000001860194417

我原先struct类型的A1页面,其页面结构是

@Component 
export struct CommunityBasePage { 
@State currentIndex : number = 0; 
//... 
}
  • 1.
  • 2.
  • 3.
  • 4.
  • 5.

必须要逐个改成

A1.ets

@Builder 
export function harBuilder(value: object) { 
//。。。 
}
  • 1.
  • 2.
  • 3.
  • 4.

这种格式才能使用文档(https://developer.huawei.com/consumer/cn/doc/harmonyos-guides/application-navigation-design-0000001860194417#section541411117319)里的推荐方案吗?那里面的@State等各种操作怎么改?

推荐方案里的demo:

const builderName = BuilderNameConstants.HARA_A1; 
if (!RouterModule.getBuilder(builderName)) { 
  const builder: WrappedBuilder<[object]> = wrapBuilder(harBuilder); 
  RouterModule.registerBuilder(builderName, builder); 
}
  • 1.
  • 2.
  • 3.
  • 4.
  • 5.

都是对builder进行处理的,怎么没有对page对应的操作?

HarmonyOS
2024-08-04 18:35:10
浏览
收藏 0
回答 1
回答 1
按赞同
/
按时间
pfuchenlu

原page页面可以正常写,在封装的@Builder里面引用原page即可,如:

export function harBuilder(value: object) { 
  NavDestination() { 
    Column() { 
      // ... 
      Page2(); // 这里放您原先的page页 
    } 
  }
  • 1.
  • 2.
  • 3.
  • 4.
  • 5.
  • 6.
  • 7.

详细应用导航设计请参考文档中的demo:

https://developer.huawei.com/consumer/cn/doc/harmonyos-guides/application-navigation-design-0000001860194417#section541411117319

分享
微博
QQ
微信
回复
2024-08-05 13:00:06
相关问题
el1与el2文件是否有区别
1720浏览 • 1回复 待解决
audioPlayer.src怎设置media里面的mp3文件
3258浏览 • 1回复 待解决
错误rowCount返回值-1如何处理
2171浏览 • 1回复 待解决
HarmonyOS 2in1怎么禁止最大化
1010浏览 • 1回复 待解决
HarmonyOS 路由跳转bea1问题
897浏览 • 1回复 待解决
HarmonyOS ASN.1
807浏览 • 1回复 待解决
HarmonyOS 获取相册视频sha1签名
727浏览 • 1回复 待解决
主工程怎么使用module里面的颜色?
643浏览 • 1回复 待解决
neptune 烧写报错[upload] Error -1
7571浏览 • 2回复 待解决
HarmonyOS List组件滑动限制为1问题
467浏览 • 1回复 待解决