如何在打字稿中声明淘汰组件?

时间:2015-06-22 16:33:25

标签: javascript knockout.js typescript

我试图按照示例在淘汰赛中创建一个组件。

http://knockoutjs.com/documentation/component-overview.html

但我必须在打字稿中编写代码。那么如何使用打字稿在淘汰赛中注册组件?

我应该在.ts文件中写什么来转换它,如下所示。

ko.components.register('like-widget', {
viewModel: function(params) {

我开始在构造函数中编写代码,但不知道如何完成它。

class TodayViewModel {
todayWidget: KnockoutComponents;
config: KnockoutComponentTypes.Config;
constructor() {
    this.config.template = "sdfs.html";
    this.todayWidget.register("like-widget", this.config);
}}export = TodayViewModel;

1 个答案:

答案 0 :(得分:5)

尝试使用这种方法:

// import knockout
import ko = require("knockout");

// your viewmodel class
class TodayViewModel {
    todayText = ko.observable<string>();
}


// register the component
ko.components.register("like-widget", {
    viewModel: TodayViewModel,
    template: "<span data-bind='text: todayText'></span>"
});

P.S。你需要knockout.TypeScript.DefinitelyTyped