2013-06-25 5 views
3

와 내가 전에 백본 관계를 사용하지만 타이프 라이터로, 나는 시작하는 데 문제했습니다백본 관계는 타이프

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

UPDATE :이 오류가 발생합니다

/// <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() 

:

Backbone Relational 문서에서 CoffeeScript 구문을 사용할 때 setup()이 자동으로 호출되지 않는다고 밝혀졌습니다. 이것이 내 Typescript 문제와 관련이있을 수 있습니까? 그렇다면 입력 스크립트에서 설정을 호출 할 수있는 위치는 어디입니까?

http://backbonerelational.org/#RelationalModel-setup

답변

1

백본 문서는 것에 따라 엔티티를 설정하는 적절한 방법은 :

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-setup

+0

이 기괴한입니다! 위의 내용은 VS에서는 컴파일되지 않지만 TypeScript 놀이터에서는 절대적으로 잘 컴파일됩니다. '설치'속성이 'new (options :: any) => MyModel' – user888734

+0

유형의 값에 존재하지 않습니다. 내 VS에서 컴파일됩니다. 어떤 버전을 사용하고 있습니까? 나는 0.9.0에 – basarat

+1

아하! 이제 모든 것이 작동합니다! 나는 0.8.x를 사용하고 있었고 정적 설정 방법에 만족하지 않았습니다. 이제는 효과가 있으며, 그 밖의 모든 것들도 마찬가지입니다. 도와 줘서 고마워. – user888734