2017-02-17 6 views
1

Я пытаюсь использовать библиотеку @blueprintjs/core в своем проекте. Однако, когда я компилирую свой код, у меня возникает много ошибок:Инициализаторы не допускаются при возникновении проблем окружающей среды при установке Blueprint

node_modules/@blueprintjs/core/dist/common/classes.d.ts(4,30): 
    error TS1039: Initializers are not allowed in ambient contexts. 

Что происходит? Что я делаю не так?

ответ

4

Начиная с @blueprintjs/[email protected], Blueprint теперь скомпилирован с использованием TypeScript 2.1. С помощью этой новой версии TypeScript инициализаторы добавляются к испускаемым типом для констант.

Так что прежде, линия излучаемого classes.d.ts выглядит следующим образом:

export declare const ACTIVE: string; 

Это выглядит, как это и включает в себя инициализатор:

export declare const ACTIVE = "pt-active"; 

Этот новый синтаксис в декларации файлов делает старые версии компилятора недовольны. Чтобы устранить ошибку, вам необходимо убедиться, что вы компилируете свой проект, по крайней мере, с помощью TypeScript 2.1.

3

Я имел эту проблему, но для меня, обновляя локальные (и глобальные) машинописи пакетов сделали не решить эту проблему. К счастью, я наткнулся на следующую статье Which version of TypeScript is Visual Studio Using?

В двух словах, в то время как я был обновлен до машинописи 2,2, Visual Studio еще ссылающейся версия 2.0 в файле .csproj. Надеюсь, это поможет кому-то еще с подобной проблемой.

2

Удалить папку узловые-модули и сделать чистую установку.