gpt4 book ai didi

typescript - 获取识别为接口(interface)的 typescript 类

转载 作者:搜寻专家 更新时间:2023-10-30 21:45:07 26 4
gpt4 key购买 nike

在尝试升级到 TypeScript 3.5 时,我遇到了一个签名问题,由于某种奇怪的原因,该签名已被 ts-compiler 忽略,但多年来一直存在。

第三方框架 (knockoutJS) 要求我传递符合以下要求的内容:

interface ViewModelFunction {
(params?: any): any;
}

显然在运行时它可以像这样工作:

class MyClass {
public foobar: string;
constructor(params: { foo: string; bar: number }) {
this.foobar = params.foo + params.bar;
}
public doSomething = () => {
return this.foobar.length;
}
}

然后将 MyClass 发送到需要 ViewModelFunction 作为属性的函数中。由于代码有效,这主要是 typescript 问题。虽然这是一个谜(但不重要为什么)ts3.5 突然注意到这一点,没有任何版本的 typescript 会接受类似的东西

class MyClass implements ViewModelFunction{...}

那么是否可以通过任何方式将类转换为 ViewModelFunction 接口(interface)?

最佳答案

const viewModel: ViewModelFunction = params => new MyClass(params);

关于typescript - 获取识别为接口(interface)的 typescript 类,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/56889271/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com