2

我目前正在寻找将我们的项目迁移到 TypeScript。我已经找到一组很棒的定义文件,我目前正在试验用于Knockout的定义文件。

我知道定义文件有一个 observableArray 的类型KnockoutObservableArray,我也知道你可以定义一个类型化的数组,比如MyType[].

我想知道我是否可以以某种方式将这两者结合起来?我想创建一个KnockoutObservableArray元素应该是 type 的MyType

提前致谢!

4

1 回答 1

4

TypeScript 的路线图包括泛型,我认为这是您创建所需内容所需要的。以下代码不是真实的,甚至可能不是 TypeScript 团队实现泛型的方式,但它提供了我认为的实现方式的味道。我还遗漏了有关如何使其可观察等的实现细节:

class KnockoutObservableArray <T> {
    constructor(public Items: T[]) {
    }
}

var observableString = new KnockoutObservableArray<string>(['foo', 'bar']);

但正如我所提到的,TypeScript 中还没有包含泛型,所以现在你必须让它动态化!

var observableString: any;
于 2012-12-17T16:54:26.637 回答