HarmonyOS 请问NavDestination作为根容器的页面添加了@Entry为什么没有走页面的生命周期?

index.ets

@Entry  
@Component  
struct Index {  
  @Provide('pageInfos') pageInfos: NavPathStack = new NavPathStack()  
  isLogin: boolean = false;  
  @Builder  
  PagesMap(name: string) {  
    if (name == 'Page01') {  
      Page01()  
    } else if (name == 'Dialog01') {  
      Dialog01()  
    }  
  }  
  build() {  
    Navigation(this.pageInfos) {  
      Button('push Page01')  
        .width('80%')  
        .onClick(() => {  
          this.pageInfos.pushPathByName('Page01', '');  
        })  
    }  
    .mode(NavigationMode.Stack)  
    .titleMode(NavigationTitleMode.Full)  
    .title('主页')  
    .navDestination(this.PagesMap)  
  }  
}

test.ets

@Entry  
@Component  
export struct Page01 {  
  @Consume('pageInfos') pageInfos: NavPathStack;  
  build() {  
    NavDestination() {  
      Button('push Page01')  
        .width('80%')  
        .onClick(() => {  
          this.pageInfos.pushPathByName('Page01', '');  
        })  
        .margin({top: 10, bottom: 10})  
      Button('push Dialog01')  
        .width('80%')  
        .onClick(() => {  
          this.pageInfos.pushPathByName('Dialog01', '');  
        })  
        .margin({top: 10, bottom: 10})  
    }  
    .title('Page01')  
  }  
  onPageShow(): void {  
    console.info("yxl-onpageshow")  
  }  
  onPageHide(): void {  
    console.info("yxl-onpagehide")  
  }  
}

尝试使用Navgation组件作为页面的导航的首页,然后跳转到新的页面去,为什么这个新的页面没有办法走页面的声明周期呢,加了entry也没用,onpageshow不调用的, 只能走NavDestination自身的回调才可以。

HarmonyOS
2024-10-10 11:56:06
浏览
收藏 0
回答 1
待解决
回答 1
按赞同
/
按时间
zbw_apple

使用navigation跳转的页面不会走onPageShow生命周期,设计如此。onPageShow仅@Entry装饰的自定义组件生效:https://developer.huawei.com/consumer/cn/doc/harmonyos-references-V5/ts-custom-component-lifecycle-V5#onpageshow

分享
微博
QQ
微信
回复
2024-10-10 16:52:37
相关问题
HarmonyOS能否全局监听页面的生命周期
449浏览 • 1回复 待解决
HarmonyOS页面onPageShow生命周期不回调
788浏览 • 1回复 待解决
HarmonyOS navigation主页面生命周期
291浏览 • 1回复 待解决
HarmonyOS TabContent页面生命周期不触发
268浏览 • 1回复 待解决
HarmonyOS App生命周期什么
282浏览 • 2回复 待解决
AbilityStage组件容器生命周期和回调
2476浏览 • 1回复 待解决
onBackPress生命周期什么,如何重写
414浏览 • 1回复 待解决
HarmonyOS 模块生命周期管理
133浏览 • 1回复 待解决
TabContent 内容生命周期
258浏览 • 1回复 待解决