HarmonyOS 鸿蒙Next 页面点击按钮后pop返回并回调数据到上一个页面 怎么实现 麻烦给出具体代码

发布于 1周前 作者 sinazl 来自 鸿蒙OS

HarmonyOS 鸿蒙Next 页面点击按钮后pop返回并回调数据到上一个页面 怎么实现 麻烦给出具体代码

页面点击按钮后pop返回,并回调数据到上一个页面,怎么实现,麻烦给出具体代码

3 回复
// 1.声明一个class

export class TmpClass {

  count: number = 10

  callBack:(e:number)=>void = ()=>{}

}

...

// 2.点击事件传值,callBack 既是回调

.onClick(() => {

            let tmp = new TmpClass()

            tmp.callBack = (e)=>{

              console.log(e.toString())

            }

            this.pageInfos.pushPathByName('pageTwo', tmp)

...

// 3. pageTwo页面 需要回传的时候 调用即可

 let temp:TmpClass = this.pathStack.getParamByName('pageTwo')[0] as TmpClass

  temp.callBack(23456)

更多关于HarmonyOS 鸿蒙Next 页面点击按钮后pop返回并回调数据到上一个页面 怎么实现 麻烦给出具体代码的实战系列教程也可以访问 https://www.itying.com/category-93-b0.html


在HarmonyOS鸿蒙系统中,实现页面点击按钮后pop返回并回调数据到上一个页面,可以通过使用Intent和回调机制来完成。以下是一个简化的示例代码:

当前页面(发送数据页面)代码

// 假设按钮点击事件处理函数
public void onButtonClick(Component component) {
    Intent intent = new Intent();
    // 假设要传递的数据是一个字符串
    intent.putElement(new StringElement("key", "要传递的数据"));
    // 结束当前页面并携带数据返回
    this.$ability.terminateAbilityWithResult(intent, 0);
}

上一个页面(接收数据页面)代码

// 在onAbilityResult中接收数据
@Override
protected void onAbilityResult(int requestCode, int resultCode, Intent resultData) {
    super.onAbilityResult(requestCode, resultCode, resultData);
    if (resultData != null) {
        StringElement element = resultData.getElementByString("key");
        if (element != null) {
            String receivedData = element.getValue();
            // 处理接收到的数据
        }
    }
}

上述代码展示了如何在点击按钮后,通过Intent携带数据返回到上一个页面,并在上一个页面中接收并处理这些数据。

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

回到顶部