Много проблем с AngularJS и Typescript в Visual Studio (DefinitelyTyped)

Я получаю много ошибок в компиляторе Visual Studio Typescript при запуске моего решения после добавления этого простого контроллера AngularJS

/// <reference path="../../../Scripts/typings/angularjs/angular.d.ts" />

"use strict";

class ProgressBarController {
    static $inject: Array<string> = ["$rootScope", "$element"];
    static measure = "px";
    static startPageFactor = 1;
    static endPageFactor = 1;

    private rootScope; // todo define RootScope boilerplate
    private element: JQuery;

    constructor($rootScope, $element: JQuery) {
        this.rootScope = $rootScope;
        this.element = $element;
    }

    getWidth(): string {
        var self = ProgressBarController,
            masterBarWidth = parseFloat(this.element.css("width").split(self.measure)[0]),
            totalPages = this.rootScope.app.pages.length - self.endPageFactor,
            eachPageProgress = (masterBarWidth / totalPages),
            currentPage = this.rootScope.app.currentIndex(),
            progress = eachPageProgress * (currentPage - self.startPageFactor);

        return progress + self.measure;
    }
}

angular.module("myDirectives")
    .controller("progressBarController", ProgressBarController);

Я использую AngularJS 1.4.9, DefinitelyTyped angular.d.ts для AngularJS 1.4+ и Visual Studio Community 2015 с Resharper 9.0 Update 1. Инструменты Typescript моего проекта находятся на версии 1.7, а компилятор нацелен на ES3 для совместимости с IE8.

Ошибок около 400, и 95% приходятся на jquery.d.ts. Все разные, и один из них «не может найти логическое имя».

У меня также проблемы с использованием ng, IAngularStatic, IScope... поэтому я просто избегал их


person VictorArcas    schedule 05.02.2016    source источник


Ответы (1)


Если вы установили пакет d.ts из NuGet, скорее всего, у вас установлена ​​старая зависимость jQuery. Обновите пакет nuget jQuery.d.ts, и вы должны быть золотыми :)

person Jannik Rasmussen    schedule 06.02.2016