javascript - 在 TypeScript 中使用类型元素 knockout 可观察数组

标签 javascript knockout.js typescript

我目前正在考虑将我们的项目迁移到 TypeScript。我找到了this一组很棒的定义文件,我目前正在尝试 Knockout 的定义文件.

我知道定义文件具有 observableArray KnockoutObservableArray 的类型,并且我也知道您可以定义像 MyType[] 这样的类型化数组。

我想知道是否可以将这两者结合起来?我想创建一个 KnockoutObservableArray,其元素应为 MyType 类型。

提前致谢!

最佳答案

TypeScript 的路线图包括泛型,我认为这是您创建所需内容所需的。下面的代码不是真实的,甚至可能不是 TypeScript 团队实现泛型的方式,但它给出了我认为它将如何实现的风格。我还遗漏了如何使其可观察等的实现细节:

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

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

但正如我所提到的,泛型尚未包含在 TypeScript 中,因此现在您必须使其动态!

var observableString: any;

关于javascript - 在 TypeScript 中使用类型元素 knockout 可观察数组,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13914512/

相关文章:

javascript - ngf-max-size $digest() 与 angular.js 中的 ng-file-upload 错误

node.js - Nestjs 存储库模式配置挑战

javascript - 我可以让 <button> 不提交表单吗?

javascript - 如何访问Knockout组件中的viewModel?

javascript - 获取原型(prototype)对象的名称

Javascript:仅在其自己的函数内直接修改数组

angular - 如何创建与 Angular 4 兼容的模态弹出窗口

angular - 调用服务 angular2 错误 'Property ' 然后'在类型 'Subscription' 上不存在

javascript - Bokeh 中的自定义 javascript 回调可从数据框中选择列并更新绘图

javascript - 基于路由器 url (Angular4) 将 header 绑定(bind)到文本