HarmonyOS 咨询一个简单的回调使用问题?

就是在回调使用时候不懂ArkTS怎么写。

现在定义一个回调接口:

export interface RegisterCallBack {
  onRegister(isSuccess: boolean, failCode: string): void;
}

然后定义一个会回调发方法:

public static registerUser(callBack: RegisterCallBack) {
  callBack.onRegister(true, "");
}

问题一:再调用这个方法时候应该怎么写呢?

问题二:如果不需要回调,不能传null空吗?

阅读 489
1 个回答

参考如下写法:

定义方法:

export interface RegisterCallBack {
  onRegister:(isSuccess: boolean, failCode: string) => void
}

export class UserInfoHelper{
  public static registerUser(callBack: RegisterCallBack) {
    callBack.onRegister(true, "400");
  }
  public static registerUser2(callBack?: RegisterCallBack) {
    if (callBack) {
      callBack.onRegister(true, "400");
    }
  }
}

调用方法:

aboutToAppear(): void {
  let callBack:RegisterCallBack = {
    onRegister(isSuccess:boolean,failCode:string){
      console.debug('onRegister failCode value:' + failCode)
    }
  }
  UserInfoHelper.registerUser(callBack)
  UserInfoHelper.registerUser2(undefined)
}
撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进