当前位置:   article > 正文

11-鸿蒙4.0学习之页面之间的参数传递_鸿蒙页面返回传参

鸿蒙页面返回传参

11-鸿蒙4.0学习之页面之间的参数传递

方法一

params

// 传参页面
import router from '@ohos.router'

@Entry
@Component
struct LifeCycle1 {
  @State message: string = 'Hello World'
  @State isShow: boolean = false

  build() {
    Row() {
      Column({ space: 20 }) {
        Text(this.message)
          .fontSize(50)
          .fontWeight(FontWeight.Bold)
        Button('跳转界面')
          .onClick(() => {
            router.pushUrl({
              url: 'pages/LifeCycle2',
             params:{
               name:'小明',
               age:20
             }
            })
          })
        Button('切换')
          .onClick(() => {
            this.isShow = !this.isShow
          })
        Divider()
        if (this.isShow) {
          LifeCycle1_son()
        }

      }
      .width('100%')
    }
    .height('100%')
  }
  // 页面显示
  onPageShow() {
    console.log('page1……onPageShow')
  }
  // 页面隐藏
  onPageHide() {
    console.log('page1……onPageHide')
  }
  // 页面返回
  onBackPress() {
    console.log('page1……onBackPress')
  }
  aboutToAppear() {
    console.log('组件本身……aboutToAppear')
  }
  // 组件析构销毁时触发:删除  移出
  aboutToDisappear() {
    console.log('组件本身……aboutToDisappear')
  }
}

@Component
struct LifeCycle1_son {
  build() {
    Column() {
      Text('子组件').fontSize(50)
    }
  }
  // 组件渲染之前
  aboutToAppear() {
    console.log('LifeCycle1_son……aboutToAppear')
  }
  // 组件析构销毁时触发:删除  移出
  aboutToDisappear() {
    console.log('LifeCycle1_son……aboutToDisappear')
  }
}


  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
  • 11
  • 12
  • 13
  • 14
  • 15
  • 16
  • 17
  • 18
  • 19
  • 20
  • 21
  • 22
  • 23
  • 24
  • 25
  • 26
  • 27
  • 28
  • 29
  • 30
  • 31
  • 32
  • 33
  • 34
  • 35
  • 36
  • 37
  • 38
  • 39
  • 40
  • 41
  • 42
  • 43
  • 44
  • 45
  • 46
  • 47
  • 48
  • 49
  • 50
  • 51
  • 52
  • 53
  • 54
  • 55
  • 56
  • 57
  • 58
  • 59
  • 60
  • 61
  • 62
  • 63
  • 64
  • 65
  • 66
  • 67
  • 68
  • 69
  • 70
  • 71
  • 72
  • 73
  • 74
  • 75
  • 76
  • 77
  • 78

接受参数页面

import router from '@ohos.router'

let name = router.getParams()['name'] as string

@Entry
@Component
struct LifeCycle2 {
  @State message: string = 'Hello World'

  build() {
    Row() {
      Column() {
        Text(name).fontSize(50)
        Text(this.message)
          .fontSize(50)
          .fontWeight(FontWeight.Bold)
        Button('返回第一个页面')
          .onClick(() => {
            router.back()
          })
      }
      .width('100%')
    }
    .height('100%')
  }
  // 页面显示
  onPageShow(){
    console.log('page2……onPageShow')
  }
  // 页面隐藏
  onPageHide(){
    console.log('page2……onPageHide')
  }
  // 页面返回
  onBackPress(){
    console.log('page2……onBackPress')
  }
}
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
  • 11
  • 12
  • 13
  • 14
  • 15
  • 16
  • 17
  • 18
  • 19
  • 20
  • 21
  • 22
  • 23
  • 24
  • 25
  • 26
  • 27
  • 28
  • 29
  • 30
  • 31
  • 32
  • 33
  • 34
  • 35
  • 36
  • 37
  • 38

// 应用程序之间数据共享
// AppStorage.Set(‘appName’,‘我是应用程序’)
AppStorage.SetOrCreate(‘appName’,‘我是应用程序所存储的数据’)

// 从应用对象身上取出数据
let appName:string = AppStorage.Get(‘appName’) as string

// 模拟器获取不到,真机可以显示出来

声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/w/花生_TL007/article/detail/318613
推荐阅读
相关标签
  

闽ICP备14008679号