2015-09-03 3 views
0

Эта ошибка/предупреждение появляется в каждом файле, который я пытаюсь продлить с Backbone.View. Компилятор все еще работает, и JavaScript работает так, как ожидалось. Даже с пустым классом он выдает ту же ошибку:Класс «Просмотр» неправильно расширяет базовый класс «Backbone.View»

/// <reference path="references/backbone.d.ts" /> 

module Test { 
    export class View extends Backbone.View<Model> { 

    } 
} 

Ссылка файл Я использую это последний из DefinitelyTyped библиотеки Бориса Янков в. Посмотреть класс определяется как:

class View <TModel extends Model> extends Events { 

    /** 
    * Do not use, prefer TypeScript's extend functionality. 
    **/ 
    private static extend(properties: any, classProperties?: any): any; 

    constructor(options?: ViewOptions<TModel>); 
    initialize(options?: ViewOptions<TModel>): void; 

    /** 
    * Events hash or a method returning the events hash that maps events/selectors to methods on your View. 
    * For assigning events as object hash, do it like this: this.events = <any>{ "event:selector": callback, ... }; 
    * That works only if you set it in the constructor or the initialize method. 
    **/ 
    events(): any; 

    $(selector: string): JQuery; 
    model: TModel; 
    collection: Collection<TModel>; 
    //template: (json, options?) => string; 
    setElement(element: HTMLElement, delegate?: boolean): View<TModel>; 
    setElement(element: JQuery, delegate?: boolean): View<TModel>; 
    id: string; 
    cid: string; 
    className: string; 
    tagName: string; 

    el: any; 
    $el: JQuery; 
    setElement(element: any): View<TModel>; 
    attributes: any; 
    $(selector: any): JQuery; 
    render(): View<TModel>; 
    remove(): View<TModel>; 
    make(tagName: any, attributes?: any, content?: any): any; 
    delegateEvents(events?: any): any; 
    undelegateEvents(): any; 

    _ensureElement(): void; 
} 

Это помогло бы, если компилятор был немного более многословным и сказал мне как я расширив класс неправильно. Есть ли что-либо, что является обязательным для расширения класса Backbone.View и предотвратить появление этого загадочного предупреждения во всех моих представлениях?

Или, могу ли я хотя бы подавить предупреждение? Если у меня есть этот класс View, который будет расширен много раз, очень сложно найти реальные ошибки во время компиляции.

ответ

1

Я создал новый проект с VS2015 и добавил ваш код выше. Я не получаю сообщение об ошибке/предупреждении, поэтому я предполагаю, что оно основано на чем-то еще в вашей среде/наборе инструментов.

+0

Хм, я использую WebStorm, чтобы это было так. Хотя определения и компилятор принадлежат библиотеке Microsoft TypeScript. WebStorm просто интегрирует их в свою среду. Какую версию компилятора вы используете? Я использую 1.6.0-бета. –

+0

Я использовал стандартную профессиональную установку VS2015, это версия 1.5.3. –

+0

Спасибо за помощь Torsten, upvoted. Мне нужно углубиться в разные IDE, и если они будут бросать одни и те же ошибки. –

Смежные вопросы