it-swarm.com.ru

Какую версию TypeScript использует код Visual Studio? Как его обновить?

Как узнать, какая версия TypeScript используется в коде Visual Studio? В частности, я использовал TypeScript 1.8.10 и VSCode 1.4.0. Я сначала обновил VSCode до последней версии, которая была 1.5.3. Но, проверяя из командной строки, я увидел, что моя версия TypeScript была все еще 1.8.10. Поэтому я обновил TypeScript из командной строки, и теперь он 2.0.3.

Есть ли способ точно сказать, использует ли Visual Studio Code версию 2.0.3?

Существует ли способ обновления кода Visual Studio, который будет автоматически обновлять TypeScript до последней выпущенной версии, или обновление TypeScript должно выполняться независимо?

64
Richard Fuhr

От https://code.visualstudio.com/docs/languages/TypeScript#_using-newer-TypeScript-versions :

VS Code поставляется с последней стабильной версией TypeScript.

Это означает, что нет способа автоматически обновить версию TypeScript, используемую VS Code. Однако вы можете переопределить версию TypeScript VS, которую использует код, изменив либо пользовательские настройки, либо настройки рабочего пространства.

Какую версию TS использует VS Code?

Когда вы открываете файл TypeScript, VS Code должен отобразить версию TypeScript в строке состояния в правом нижнем углу экрана:

VS Code status bar TypeScript version

Изменение глобальной версии TypeScript

  1. Установите нужную версию TypeScript глобально, например npm install -g [email protected]
  2. Открыть VS Code User Settings (F1 > Open User Settings)
  3. Обновление/вставка "TypeScript.tsdk": "{your_global_npm_path}/TypeScript/lib" вы можете узнать {your_global_npm_path}, набрав npm root -g

Теперь все проекты, которые вы открываете с помощью VS Code, будут использовать эту версию TypeScript, если, конечно, нет настройки рабочего пространства, которая переопределяет это.

Изменение локальной версии TypeScript

  1. Откройте проект в VS Code
  2. Установите нужную версию TypeScript локально, например npm install --save-dev [email protected]

    --save-dev обновит package.json вашего проекта, добавив версию TypeScript, которую вы установили как devDependency.

  3. Open VS Code Workspace Settings (F1 > Open Workspace Settings)

  4. Обновить/вставить "TypeScript.tsdk": "./node_modules/TypeScript/lib"

    Теперь только проект, в который вы установили эту версию TypeScript, будет использовать эту версию TypeScript, глобальная установка будет игнорироваться VS Code в этом проекте.

  5. После добавления записи TypeScript.tsdk также необходимо использовать интерфейс VS Code для выбора новой версии:

    • Нажмите на версию, отображаемую в нижнем колонтитуле VS Code:

      enter image description here

    • Выберите его в пользовательском интерфейсе:

      enter image description here

    Смотрите Использование версии TypeScript для рабочей области

    Смотрите также Улучшите документацию для TypeScript.tsdk, чтобы сделать использование рабочего пространства более понятным

129
Fabian Lauer

Есть ли способ точно сказать, использует ли Visual Studio Code версию 2.0.3?

Откройте файл TypeScript в коде Visual Studio и в правом нижнем углу вы увидите версию используемого TypeScript:

 enter image description here

Существует ли способ обновления кода Visual Studio, который будет автоматически обновлять TypeScript до последней выпущенной версии, или обновление TypeScript должно выполняться независимо?

То, как я это делал, - явно указывал Visual Studio Code папку, в которой установлен модуль TypeScript npm. Я использую Windows, поэтому после запуска команды npm для установки TypeScript (npm install -g TypeScript) она будет установлена ​​в эту папку:

C:\Users\username\AppData\Roaming\npm\node_modules\TypeScript\

Поэтому вы должны указать Visual Studio Code использовать папку lib вашей установки TypeScript npm. Вы делаете это путем:

  1. Откройте настройки VS Code (Файл -> Настройки -> Настройки).

  2. Поиск TypeScript.tsdk setting  enter image description here

  3. Найдите, где npm установил TypeScript с помощью: npm list -g TypeScript. В моем случае он вернул C:\Users\username\AppData\Roaming\npm

  4. Замените значение параметра TypeScript.tsdk на: C:\\Users\\username\\AppData\\Roaming\\npm\\node_modules\\TypeScript\\libОбратите внимание на использование двойной обратной косой черты, чтобы получить правильно экранированную строку с обратной косой чертой.

  5. Убедитесь, что VS Code использует версию nScript TypeScript для intellisense, открыв файл TypeScript, щелкнув номер версии TypeScript в правом нижнем углу и увидев в окне задач, что VS Code загружает TypeScript из каталога, указанного на шаге 4:

 enter image description here

  1. Убедитесь, что VS Code использует правильную версию TypeScript для компиляции, перейдя в эту папку и изменив имя файла:

C:\Users\имя пользователя\AppData\Roaming\npm\tsc.cmd (что-то вроде tsc1.cmd)

Теперь попробуйте встроить в VS Code (Tasks -> Run Tasks -> tsc: build - tsconfig.json), и вы должны получить это сообщение об ошибке в окне терминала VS Code:

'tsc' is not recognized as an internal or external command, operable program or batch file.
The terminal process terminated with exit code: 1
  1. Измените файл обратно на tsc.cmd, и теперь вы сможете создавать и использовать Intellisense в VS Code для глобально установленного пакета узлов TypeScript.
12
gomisha

Visual Studio Code поставляется с собственной стабильной версией TypeScript, но вы можете перейти на более новую версию, как описано в их docs

VS Code поставляется с последней стабильной версией TypeScript. Если ты хочешь чтобы использовать более новую версию TypeScript, вы можете определить Настройка TypeScript.tsdk (Файл> Предпочтения> Пользователь/Настройки рабочего пространства) указывает на каталог, содержащий файл TypeScript tsserver.js.
...
Например:

{
   "TypeScript.tsdk": "node_modules/TypeScript/lib"
}
12
DAXaholic

Вы должны увидеть номер версии, указанный на нижней панели:

 enter image description here

Если вы нажмете на номер (2.4.0 выше), вам будет предложено выбрать версию, которую вы хотите использовать:

 enter image description here

Если вы не видите нужную версию, это означает, что она, вероятно, не установлена, и вам нужно установить ее.

npm install -g [email protected]

Замените 2.7.2 версией, которую вы хотите установить.

2
mattnedrich

У меня была похожая проблема, и теперь мне удалось получить обновленную версию TypeScript, изменив переменные среды в моей системе. В моем случае нам нужна версия TypeScript выше 2. Но я смог использовать только версию 1.8.3. Во-первых, я пошел к своим системным переменным окружения и проверил переменную пути. Там я нашел ссылку на TypeScript версии 1.8.3.

C:\Program Files (x86)\Microsoft SDKs\TypeScript\1.8.3 \

Когда я проверял родительский каталог, в нем также была установлена ​​самая высокая версия. Я бы подумал, установив последнюю версию в глобальном масштабе, что я бы увидел это и здесь, но его там нет. Версия, которую вы видите здесь, является той, которая была установлена ​​с Visual Studio (не код Visual Studio). 

Поэтому я пошел в Visual Studio и обновил библиотеку TypeScript до последней версии через Параметры> Расширения и обновления. Там я искал последнюю версию TypeScript и установил ее. 

Это сделало новую версию доступной в родительском каталоге, упомянутом ранее . Затем я изменил переменную пути на:

C:\Program Files (x86)\Microsoft SDKs\TypeScript\2.2 \

Когда я сейчас открываю VS Code и набираю tsc -v, я вижу, что использую последнюю версию. Больше нет сообщений о несоответствии и т.д. Надеюсь, это немного поможет вам, ребята.

0
Thomas Van Herpe

Хотя я не смог найти файл tsserver.js, когда использовал Spotlight на своем Mac, я попытался снова с помощью mdfind и обнаружил, что его местоположение: "/ Usr/local/lib/node_modules/TypeScript/lib /"

Таким образом, я использовал этот путь при редактировании настроек рабочего пространства в файле settings.json.

Сейчас я использую мою самую последнюю версию TypeScript, и VSCode сообщает мне, что я использую мою последнюю версию.

0
Richard Fuhr

В пакете TypeScript есть компилятор и языковая служба. VScode поставляется с языковой службой TypeScript, а не с компилятором. Вы можете увидеть языковой сервис в правом нижнем углу, как показывают другие ответы, но вы не можете видеть, какая версия компилятора использовалась.

У вас могут быть разные версии для компилятора и языковой службы.

0
Lombas