ArkTS:父组件调用子组件方法

创建控制组件方法类

// 定义controller对象
export class PostController {
  scrollToIndex1 = (value: number) => {
  }
}

子组件方法绑定

private controller: PostController = new PostController();
aboutToAppear() {
  if (this.controller) {
    // 给controller对应的方法赋值
    this.controller.scrollToIndex1 = this.scrollToIndex1;
  }
}
// 子组件方法,供父组件调用
private scrollToIndex1 = (value: number) => {
  this.scroller.scrollToIndex(value)
}

父组件调用

创建方法

private postController = new PostController();

传入组件绑定

//术语内容
Column(){
  // 术语内容组件
  PostCompo(
    {
      index:this.index,
      mockMessages:this.mockMessages,
      controller:this.postController}
  );
}

调用子组件方法

.width('100%')
.onClick(()=>{
  this.postController.scrollToIndex1(item.id as number);
})