前端知识点---路由模式-实例模式和单例模式(ts)

在 ArkTS(Ark UI 框架)中,路由实例模式(Standard Instance Mode)主要用于管理页面跳转。当创建一个新页面时,可以选择标准实例模式(Standard Mode)或单实例模式(Single Mode)。

路由实例模式

  1. 标准实例模式(Standard Mode)

    每次跳转都会创建一个新的页面实例。

    适用于 允许用户打开多个相同页面的情况。

    不会复用已有的页面实例,每次跳转都会创建新的页面实例,用户返回时可以看到之前的页面状态。

  2. 单实例模式(Singleton Mode)

    相同的页面始终只有一个实例,不会创建多个副本。

    适用于 同一个页面不需要重复创建的情况,比如 设置页面。

    如何在 ArkTS 中创建一个新页面(标准实例模式)

    使用 router.pushUrl() 进行页面跳转时,默认采用 标准实例模式。

示例:创建并跳转到新页面

步骤 1:创建 PageA 页面

ts 复制代码
@Entry
@Component
struct PageA {
  build() {
    Column() {
      Text('这是 PageA')
      Button('跳转到 PageB')
        .onClick(() => {
          router.pushUrl({
            url: 'pages/PageB',  // 指定要跳转的页面路径
            mode: RouterMode.Standard  // 使用标准实例模式
          })
        })
    }
  }
}

步骤 2:创建 PageB 页面

ts 复制代码
@Entry
@Component
struct PageB {
  build() {
    Column() {
      Text('这是 PageB')
    }
  }
}

详细解析

  1. router.pushUrl()

    url: 'pages/PageB' → 指定跳转的目标页面。

    mode: RouterMode.Standard → 使用标准实例模式,每次跳转都会创建新的 PageB 实例。

  2. 什么时候使用标准实例模式?

    适用于需要创建多个相同页面实例的场景

    例如:新闻详情页,每次打开不同的新闻都会创建新的实例。

    例如:表单页面,每次填写新表单都会创建新的实例。

    单实例模式(仅创建一个页面实例)

    如果希望同一个页面只创建一个实例,可以使用 单实例模式:

ts 复制代码
router.pushUrl({
  url: 'pages/PageB',
  mode: RouterMode.Single  // 只创建一个实例
})

如果页面已经存在,则不会重新创建,而是直接返回已有页面。

总结

相关推荐
大土豆的bug记录1 小时前
鸿蒙实现自定义类似活体检测功能
数码相机·华为·harmonyos·鸿蒙
hahjee5 小时前
命令行参数解析利器:gnuflag在OpenHarmony PC上的完整适配实战
开源·鸿蒙
kirk_wang6 小时前
Flutter 三方库 `flutter_phone_direct_caller` 在 OpenHarmony 平台的适配实战
flutter·移动开发·跨平台·arkts·鸿蒙
hahjee6 小时前
Go编写的ANSI终端颜色和样式控制库在OpenHarmony PC上的完整适配实战
开发语言·后端·鸿蒙
kirk_wang1 天前
Flutter video_thumbnail 库在鸿蒙(OHOS)平台的适配实践
flutter·移动开发·跨平台·arkts·鸿蒙
JohnnyDeng941 天前
ArkTs-线程池工具封装
线程池·arkts·鸿蒙
后端小张1 天前
【JAVA进阶】鸿蒙开发与SpringBoot深度融合:从接口设计到服务部署全解析
java·spring boot·spring·spring cloud·华为·harmonyos·鸿蒙
kirk_wang2 天前
Flutter 三方库在 OHOS 平台的适配实践:以 flutter_mailer 为例
flutter·移动开发·跨平台·arkts·鸿蒙
kirk_wang3 天前
Flutter media_info插件在OpenHarmony平台的适配实践
flutter·移动开发·跨平台·arkts·鸿蒙
遇到困难睡大觉哈哈4 天前
Harmony os —— Data Augmentation Kit 知识问答实战全流程(流式 RAG 问答踩坑记录)
harmonyos·鸿蒙