javascript - 在 typescript 中,如何实现带有回调的接口(interface)?

标签 javascript typescript

我在 typescript 中创建了一个带有回调的接口(interface),如何实现它?

interface LoginCallback{
    Error: boolean,
    UserInfo: {
        Id: string,
        OrganizationId: string
    }
}

interface IntegrationInterface {
    Init(): void;
    LogIn(UserName: string, Password: string, LoginCallback:LoginCallback): void;
}

最佳答案

您声明 LoginCallback 的方式意味着它只是一个对象而不是函数。我想这就是您想要的:

interface LoginCallback {
    (Error: boolean, UserInfo: { Id: string, OrganizationId: string }): void;
}

interface IntegrationInterface {
    Init(): void;
    LogIn(UserName: string, Password: string, LoginCallback: LoginCallback): void;
}

然后要实现该接口(interface),您可以执行以下操作:

class IntegrationImpl implements IntegrationInterface {
    Init() {
       //... 
    }
    LogIn(UserName: string, Password: string, LoginCallback: LoginCallback) {
     //...   
    }

}

关于javascript - 在 typescript 中,如何实现带有回调的接口(interface)?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/44932956/

相关文章:

node.js - ffmpeg --help, node child_process spawn trigger stderr

javascript - 如果没有被拒绝, promise 链式结果

javascript - typescript : Trying the addition of two variables but get the concatenation of the two

reactjs - 如何使用 TypeScript 验证与 Axios GET 响应的接口(interface)

Angular (4, 5, 6, 7) - ngIf 上滑入滑出动画的简单示例

angular - 如何使用 Angular 2 或 TypeScript 获取访问者位置

javascript - 如何从 JavaScript 中的任意字符串创建有效的文件名?

javascript - 使用 Twilio 向收件人列表发送消息

javascript - 在响应图像上垂直居中 div 标题

javascript - 循环绘制许多 Canvas ?