美文网首页
【鸿蒙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