与Typescript相关的主干



我以前使用过Backbone Relational,但没有使用Typescript,并且在入门时遇到了问题:

/// <reference path="../Typings/backbone.d.ts"/>
/// <reference path="../Typings/backbone.relational.d.ts"/>
module Application.Models {
    export class Entity extends Backbone.RelationalModel {
        constructor(options?) {
            super(options);
        }
    }
}

var e = new Models.Entity()

这引发了一个错误:

Uncaught TypeError: Object function Entity() {
                    _super.call(this);
        } has no method 'initializeModelHierarchy'

更新:

我在Backbone Relational文档中发现了这一点,该文档指出,使用CoffeeScript语法时不会自动调用setup()。这可能与我的打字问题有关吗?如果是这样的话,在我的打字稿中,你认为我可以在哪里调用setup?

http://backbonerelational.org/#RelationalModel-设置

根据Backbone文档设置实体的正确方法是:

declare module Backbone{
    export class RelationalModel{
        constructor(options?:any);
        static setup():any;
    }   
}
class MyModel extends Backbone.RelationalModel {
    constructor(options?) {
        super(options);
    }
}
MyModel.setup();
var x = new MyModel();

TypeScript Playground和JsFiddle

基于文档:http://backbonerelational.org/#RelationalModel-设置

相关内容

  • 没有找到相关文章

最新更新