美文网首页
【鸿蒙HarmonyOS】ArkTS父组件调用子组件方法

【鸿蒙HarmonyOS】ArkTS父组件调用子组件方法

作者: 呵呵哒不忧伤 | 来源:发表于2024-09-28 11:25 被阅读0次

    使用场景:页面包含吸顶结构时,父组件刷新时需要调用子组件的请求方法

    1. 子组件创建一个ChildController
    export class ChildController {
      refreshData = () => {
      }
    }
    
    1. 子组件声明controller属性
    private controller: ChildController = new ChildController();
    
    1. 子组件添加方法
      refreshData = () => {
        this.curPage = 1;
        this.loadData();
      }
    
    1. 子组件在aboutToAppear方法中赋值
      aboutToAppear() {
        if (this.controller) { //给controller对应的方法赋值
          this.controller.refreshData = this.refreshData;
        }
      }
    
    1. 父组件导入ChildController并声明一个响应式
      private childRef = new ChildController();
    2. 创建子组件时给子组件的controller赋值
    子组件({ controller: this.childRef })
    
    1. 调用时:this.childRef.refreshData()
    • 踩坑日记:如果子组件是循环创建的(For Each),则第5步需要声明的是响应式数组,第6、7步根据索引赋值调用
    • 父组件调用子组件官方链接

    相关文章

      网友评论

          本文标题:【鸿蒙HarmonyOS】ArkTS父组件调用子组件方法

          本文链接:https://www.haomeiwen.com/subject/aswlrjtx.html