HarmonyOS 鸿蒙Next 路由参数如何接收,怎么写都报错

发布于 1周前 作者 yuanlaile 最后一次编辑是 5天前 来自 鸿蒙OS

HarmonyOS 鸿蒙Next 路由参数如何接收,怎么写都报错

路由参数接受类型接口怎么转换

interface routerParamsType{
ID:number
}

方法一

let str:string = router.getParams()[‘ID’] as string

方法二

const params:string= JSON.stringify(router.getParams())
const param:routerParamsType =JSON.parse(params);
const id:number=param[‘ID’]


更多关于HarmonyOS 鸿蒙Next 路由参数如何接收,怎么写都报错的实战系列教程也可以访问 https://www.itying.com/category-93-b0.html

3 回复
import { router } from '@kit.ArkUI'

@Entry
@Component
struct PageA {
  build() {
    Column() {
      Button('跳转至PageB')
        .onClick(() => {
          router.pushUrl({
            url: "pages/test/PageB"
          })
        })
      Button('跳转至PageC')
        .onClick(() => {
          router.pushUrl({
            url: "pages/test/PageC"
          })
        })
    }.width('100%').height('100%').alignItems(HorizontalAlign.Center).justifyContent(FlexAlign.Center)
  }

  onPageShow(): void {
    let params = router.getParams() as result;
    if (params?.page == 'PageB') {
      console.info('page B')
    } else if (params?.page == 'PageC') {
      console.info('page C')
    }
  }
}

class result {
  page: string
  result: PageResult

  constructor(page: string, result: PageResult) {
    this.page = page
    this.result = result
  }
}

export class PageResult {
}

更多关于HarmonyOS 鸿蒙Next 路由参数如何接收,怎么写都报错的实战系列教程也可以访问 https://www.itying.com/category-93-b0.html


如果传入的是routerParamsType ,

router.getParams() as routerParamsType 就好了

在HarmonyOS鸿蒙Next中接收路由参数,通常需要使用系统提供的API进行参数获取。如果写代码时遇到报错,首先需要确保你的开发环境、API版本以及代码实现符合鸿蒙系统的规范。

接收路由参数的基本步骤如下:

  1. 定义路由参数:在配置路由时,确保你已经正确设置了需要传递的参数名及其类型。

  2. 获取路由上下文:在目标页面中,通过Intent对象获取路由上下文。

  3. 读取参数:使用Intent提供的API(如getXXXParameter)读取对应的路由参数,其中XXX代表参数的类型,例如getStringParameter用于读取字符串类型的参数。

  4. 处理参数:根据业务逻辑处理接收到的参数。

示例代码(伪代码):

// 注意:此示例为伪代码,具体API需参考鸿蒙开发文档
Intent intent = getIntent();
String param = intent.getStringParameter("paramName");
// 使用param进行后续处理

注意,由于鸿蒙系统采用其特有的开发框架和API,确保你的代码使用了正确的鸿蒙API,而不是其他平台的API。

如果问题依旧没法解决请联系官网客服,官网地址是:https://www.itying.com/category-93-b0.html

回到顶部