鸿蒙开发 一个简单的页面跳转

废话

刚从Java切过来,确实是不太习惯,有点无从下手的感觉。(原谅我菜,不会VUE不会TS相关的任何东西)。

基础的Entry Component State 这三个最基础的标签还有一些基础的语法,就不废话了,详细可以看地下的相关资料,有视频有文档。

相关资料

TS快速入门:TS快速入门

ArkTS基础:<HarmonyOS第一课>ArkTS开发语言介绍-华为开发者学堂 (huawei.com)

ArkTS开发实践:<HarmonyOS第一课>ArkTS开发语言介绍-华为开发者学堂 (huawei.com)

直接开搞

Hello Word 步骤就省略了,我这里新建的是 3.1.0 (API 9)Stage的项目。

1.直接在Hello Word项目的基础上,在主页pages/Index.ets的下方新建一个Login.ets类。然后给这个Login页面加一个简单的逻辑,点击一下改变一下状态(觉得没意思可忽略)。

复制代码
@Entry
@Component
struct Login {
  @State message1: string = '登录页面'

  @State test:boolean=true;

  build() {
    Row() {
      Column() {
        Text(this.message1+":"+this.test)
          .fontSize(50)
          .fontWeight(FontWeight.Bold)
          .onClick(()=>{
            //点击修改状态,触发刷新
            this.test=!this.test
          })
      }
      .width('100%')
    }
    .height('100%')
  }
}

2.找到/src/main/resources/base/profile包下的main_pages.json文件,把新创建的这个Login页面的路径加上去。(特别重要,不然你就知道什么叫头痛)

复制代码
{
  "src": [
    "pages/Index",
    "pages/Login"
  ]
}

3.万事俱备,给Index.ets中原来用来展示"Hello 吗喽"的Text控件加上一个点击事件,然后通过router.pushUrl直接跳转到Login页面即可。

复制代码
import router from '@ohos.router';

@Entry
@Component
struct Index {
  @State message: string = 'Hello 吗喽'

  build() {
    Row() {
      Column() {
        Text(this.message)
          .fontSize(50)
          .fontWeight(FontWeight.Bold)
          .onClick(() => {
            router.pushUrl({
              //跳转的页面的路径
              url: 'pages/Login',
              params: {
                //用来传参数的,留着吧,虽然用不上
                id: 1
              }
            });
          })
      }
      .width('100%')
    }
    .height('100%')
  }
}
相关推荐
xiaoqi92225 分钟前
React Native鸿蒙跨平台如何实现分类页面组件通过searchQuery状态变量管理搜索输入,实现了分类的实时过滤功能
javascript·react native·react.js·ecmascript·harmonyos
听麟32 分钟前
HarmonyOS 6.0+ 智慧出行导航APP开发实战:离线地图与多设备位置协同落地
华为·wpf·harmonyos
qq_177767371 小时前
React Native鸿蒙跨平台实现应用介绍页,实现了应用信息卡片展示、特色功能网格布局、权限/联系信息陈列、评分展示、模态框详情交互等通用场景
javascript·react native·react.js·ecmascript·交互·harmonyos
jin1233222 小时前
基于React Native鸿蒙跨平台地址管理是许多电商、外卖、物流等应用的重要功能模块,实现了地址的添加、编辑、删除和设置默认等功能
javascript·react native·react.js·ecmascript·harmonyos
2501_920931703 小时前
React Native鸿蒙跨平台医疗健康类的血压记录,包括收缩压、舒张压、心率、日期、时间、备注和状态
javascript·react native·react.js·ecmascript·harmonyos
2501_920931704 小时前
React Native鸿蒙跨平台使用useState管理健康记录和过滤状态,支持多种健康数据类型(血压、体重等)并实现按类型过滤功能
javascript·react native·react.js·ecmascript·harmonyos
2501_921930834 小时前
高级进阶 React Native 鸿蒙跨平台开发:InteractionManager 交互优化
react native·harmonyos
前端不太难4 小时前
HarmonyOS PC 文档模型完整范式
华为·状态模式·harmonyos
ITUnicorn6 小时前
【HarmonyOS6】从零实现自定义计时器:掌握TextTimer组件与计时控制
华为·harmonyos·arkts·鸿蒙·harmonyos6
摘星编程6 小时前
OpenHarmony + RN:Stack堆栈导航转场
react native·react.js·harmonyos