Где я могу найти версию TypeScript, установленную в Visual Studio?

202

Может быть, это очевидно, но я проверил везде (кроме нужного места) и погуглил. Ничего.

Адриан Рошка
источник

Ответы:

240

Если у вас установлен только TypeScript для Visual Studio, то:

  1. Запустите командную строку Visual Studio
  2. Введите tsc -vи нажмите Enter

Visual Studio 2017 версии 15.3 и выше связывают версию TypeScript с отдельными проектами, как показано в этом ответе :

  1. Щелкните правой кнопкой мыши узел проекта в обозревателе решений.
  2. Нажмите Свойства
  3. Перейти на вкладку TypeScript Build
basarat
источник
4
это не сработало для меня. Я использовал командное окно vs. У меня vs 2013 года обновление 3. Просто сказано, что команда "tsc" недействительна .. Что может быть не так?
Густав
7
@ Gustav, я думаю, что вы используете интегрированное командное окно VS ( View -> Other Windows -> Command Window ). Вы должны использовать командную строку Visual Studio из меню «Пуск» .
Орад
4
Я использовал Package Manager Console , он также работал (он доступен, когда вы используете
слепки
1
Это не работает для меня, я нашел ответ stackoverflow.com/a/39912302/191647
Мохаммад Даян
2
За пределами Visual Studio: npm install -g typcript; tsc -v
Роберт Стивенс
68

Через два года после того, как вопрос был задан, использование командной строки Visual Studio все еще не давало мне правильного ответа. Но обычное окно Help | About кажется, работает в эти дни:

Снимок диалога VS "About" сообщества VS

ОБНОВЛЕНИЕ (июнь 2017 г.):

  1. VS 2013 НЕ показывает эту информацию. (Позднее примечание: VS 2017 Enterprise Edition также не отображает эту информацию).

  2. VS использует Microsoft Build Engine (MSBuild) для компиляции файлов Typescript. MSBuild может поддерживать несколько основных выпусков Typescript, но в окне «О программе» отображается только самая последняя версия.

Вот как добраться до сути этого:

О. Чтобы проверить, какие версии Typescript установлены вместе с Visual Studio / MSBuild, проверьте содержимое папки C: \ Program Files (x86) \ Microsoft SDKs \ TypeScript . Например, у меня есть версии 1.0, 1.8 и 2.2:

Версии машинописного текста как имена папок

Б. Проверьте, какая версия Typescript запрашивается вашим проектом. В файле * .csproj найдите тег <TypeScriptToolsVersion> или добавьте его, если он отсутствует, например так


<PropertyGroup> ... <TypeScriptToolsVersion>1.8</TypeScriptToolsVersion> ... </PropertyGroup>

C. Наконец, вы можете проверить, какая версия Typescript действительно используется MSBuild. В инструментах | Варианты | Проекты и решения | Для Build and Run установите для параметра MSBuild выходную детализацию в значение Detail :

введите описание изображения здесь

Затем создайте свой проект и проверьте вывод: вы должны увидеть ссылку на одну из папок Typescript, описанную в (A).

Алекс Файнштейн
источник
54

Основываясь на ответе Басарата , я дам здесь немного больше информации о том, как запустить это в Visual Studio 2013.

  • Нажмите кнопку Пуск в Windows -> Все программы -> Visual Studio 2013 -> Инструменты Visual Studio. Окно открывается со списком инструментов.

Путь по меню для инструментов Visual Studio

  • Выберите Командная строка разработчика для VS2013
  • В открывшейся консоли напишите: tsc -v
  • Вы получаете версию: см. Изображение

введите описание изображения здесь

[ОБНОВИТЬ]

Если вы обновите Visual Studio до новой версии Typescript как 1.0.x, вы не увидите последнюю версию здесь. Чтобы увидеть последнюю версию:

  • Перейдите по адресу: C: \ Program Files (x86) \ Microsoft SDKs \ TypeScript, там вы увидите каталоги типа 0.9, 1.0 1.1
  • Введите старшее число, которое у вас есть (в данном случае 1.1)
  • Скопируйте каталог и запустите в CMD команду tsc -v, вы получите версию.

введите описание изображения здесь

ПРИМЕЧАНИЕ : Typescript 1.3 устанавливается в каталог 1.1, для этого важно выполнить команду, чтобы узнать последнюю версию, которую вы установили.

ПРИМЕЧАНИЕ . Возможно, вы установили версию 1.3 и ваш код использует 1.0.3. Чтобы избежать этого, если у вас есть Typescript в отдельном (ых) проекте (ах), выгрузите проект и посмотрите, есть ли тег Typescript:

<TypeScriptToolsVersion>1.1</TypeScriptToolsVersion> 

установлен на 1.1.

[ОБНОВЛЕНИЕ 2]

TypeScript версии 1.4, 1.5 .. 1.7 устанавливается в каталогах 1.4, 1.5 ... 1.7. они не являются проблемой для найденной версии. если у вас есть машинопись в отдельном проекте и вы переходите с предыдущей машинописи, ваш проект продолжает использовать старую версию. чтобы решить это:

выгрузите файл проекта и измените версию машинописного текста на 1.x по адресу:

  <TypeScriptToolsVersion>1.x</TypeScriptToolsVersion>

Если вы установили машинописный текст с помощью установочного файла Visual Studio, путь к новому компилятору машинописного текста должен автоматически обновиться, чтобы он указывал на каталог 1.x. Если у вас возникли проблемы, проверьте, что переменная среды Path включает

C:\Program Files (x86)\Microsoft SDKs\TypeScript\1.x\

ПРЕДЛОЖЕНИЕ ДЛЯ MICROSOFT :-) Поскольку Typescript запускается бок о бок с другой версией, возможно, было бы хорошо иметь в свойствах проекта поле со списком для выбора компилятора машинописного текста (аналогично выбору сетевой версии)

freedeveloper
источник
1
У меня были каталоги 1.0 и 1.4 в папке SDK, а настройка <TypeScriptToolsVersion> 1.4 </ TypeScriptToolsVersion> ничего не делала. Проект все еще использовал 1.0. Мне пришлось физически удалить 1.0, чтобы правильно загрузить 1.4.
Tomitrescak
Привет, нет, вам не нужно удалять другую папку. Пожалуйста, войдите в каталог 1.4 и запустите там tsc -v. Посмотри какая у тебя там версия. Приветствие
freedeveloper
Изменение переменной среды PATH таким образом, чтобы путь TypeScript 1.4 предшествовал пути 1.0, получил VS2013 Update 4 для использования версии 1.4 для меня. (Тьфу!) Возможно, кто-то может уточнить правильное использование переменной среды Path vs <TypeScriptToolsVersion>.
Ян В.
@IanW - я полагаю, что значение в PATHпеременной - это то, что tsc -vбудет читаться (из корня командной строки; при переходе к отдельным каталогам SDK и при запуске команды будет отображаться актуальная версия), но VS.NET будет использовать версию, указанную в <TypeScriptToolsVersion>значении в .csproj файл. Кажется tsc -v, это немного вводит в заблуждение, поскольку PATHзначение переменной не обновляется при установке более новых версий TypeScript. Смотрите следующее: github.com/Microsoft/TypeScript/issues/2068
atconway
1
Microsoft говорит, что нет - однако для версии intellisense есть поле со списком , которое необходимо перепроверить. Сервис> Параметры> Текстовый редактор> Javascript / Typescript> Версия
Typescript
28

Команда tsc -vrun технически считывает версию компилятора TypeScript в каталоге SDK, заданном в Pathпеременной Windows . Это не обязательно отражает последнюю установленную версию, поскольку Pathпеременная не обновляется при последующих установках.

Версия, которую использует VS.NET для компиляции TypeScript, - это то, что находится в конфигурации проекта:

<TypeScriptToolsVersion>1.5</TypeScriptToolsVersion>

Чтобы объяснить это более подробно, я создал следующий пост, в котором указаны особенности установленных версий TypeScript и какая версия VS.NET использует для компиляции файлов TypeScript.

Какая версия TypeScript установлена ​​и какая версия используется в Visual Studio?

Я также добавил запрос функции в Microsoft Connect, чтобы упростить просмотр и переключение целевой версии TypeScript в VS.NET. На самом деле это не столько запрос функции TypeScript, сколько усовершенствование IDE VS.NET.

Разрешить переключение настроенной версии TypeScript из IDE свойств проекта

atconway
источник
Мой конфиг сказал 1.7, но при записи в файл .ts мне сказали, что это 1.4 (я пытался использовать пространство имен, а intellisense сказал, что я использую 1.4, и это было доступно только в версии 1.5 и выше)
Тони
2
Изменить: моя проблема была вызвана Решарпером. Он также имеет параметр, который сообщает ему, на какой версии машинописного текста компилироваться. Боже,
Тони
Ваш ответ предполагает, что вся работа сохранена в виде файла проекта. Папка может быть открыта как веб-проект. Есть ли другое решение для таких веб-проектов?
OrganicCoder
Эта функция реализована в VS 2017.
Der_Meister
12

В Visual Studio 2015 просто перейдите по ссылке: help / about Microsoft Visual Studio. Тогда вы увидите что-то вроде этого:

Microsoft Visual Studio Enterprise 2015 Версия 14.0.24720.00 Обновление 1 Microsoft .NET Framework Версия 4.6.01055

...

TypeScript 1.7.6.0 TypeScript для Microsoft Visual Studio

....

binary_fm
источник
Я только что установил машинописный текст v1.8.6, и он все еще читает v1.8.36. Это также последняя версия в Сервис -> Расширения и обновления. Так что не очень хороший показатель, если вы хотите знать, что вы используете последнюю версию для своего проекта.
Квинтон Смит
Я просто добавлю, что я не знаю, где Microsoft получила версию 1.8.36 ... кажется, что она должна быть выше, чем 1.8.6 с 36> 6, но это не так ... это самая путаница с версионированием. испытали ...
Квинтон Смит
10

Вы можете запустить его в консоли диспетчера пакетов NuGet в Visual Studio 2013.

Даниил
источник
В VS2012 это также работает: Инструменты -> Диспетчер пакетов библиотеки -> Консоль диспетчера пакетов
Kaganar
Я видел команду npm install -g typcript, но она мне не подходит?
Жюль
3
@Jules Попробуйте проверить, если «C: \ Program Files (x86) \ Microsoft SDKs \ TypeScript \ 1.0 \;» находится в вашей системной переменной PATH. У меня была та же проблема, она вообще не брала 1.5.0-бета, после того как я установил, используя "npm install -g typcript", но это было потому, что PATH мешал ему, и когда я набрал tsc , он сначала посмотрел в PATH и запустил 1.0.3.
15:15
10

Команда TypeScript разобралась с этим в Visual Studio 2017 версии 15.3 и более поздних, включая бесплатную версию Community.

Как узнать, какие версии TypeScript установлены в Visual Studio

Все, что вам теперь нужно, это перейти к свойствам проекта любого проекта TypeScript Visual Studio (щелкните правой кнопкой мыши файл проекта в Solution Explorer / Properties), а затем перейдите на вкладку Сборка TypeScript с левой стороны. В нем есть раскрывающийся список «Версия Typescript», показывающий версию, которую использует проект, и если вы откроете ее, в раскрывающемся списке отображаются ВСЕ версии TypeScript, установленные в настоящее время в Visual Studio .

Фактические установки в настоящее время находятся в C:\Program Files (x86)\Microsoft SDKs\TypeScriptподпапках, а затем по номеру версии, по крайней мере, на Win10 на моем компьютере. Если вы хотите увидеть точную версию (например, 2.8.3, а не просто 2.8), вы можете найти соответствующую версию tsc.exeздесь и взглянуть на ее свойства (вкладка «Подробности» в контекстном меню «Свойства» в «Проводнике»).

Как установить конкретную версию TypeScript

Если вы хотите установить конкретную версию TypeScript для Visual Studio, вы можете загрузить более старые версии в разделе « Сведения-> Релизы » на странице «Загрузки TypeScript SDK для Visual Studio 2017» . Вы можете убедиться, что версия была установлена ​​либо с помощью раскрывающегося списка «Typescript version» в VS, либо проверив C:\Program Files (x86)\Microsoft SDKs\TypeScriptпапку.

Rich N
источник
1
На самом деле нет. VS 2015 не имеет выпадающего списка версий TS.
Кейт
4

У меня VS2015, и я должен запустить сборку с TypeScript 1.7, хотя у меня установлен 1.8 через npm install typescript -gдва способа (по крайней мере, для меня они работали):

  1. Перейдите к вашему .projфайлу и добавьте <TypeScriptToolsVersion>1.7</TypeScriptToolsVersion>как можно больше. Перестройте, перезапустите. Если это не работает, попробуйте 2.
  2. Перейти к Control Panel -> System -> Advanced System Settings -> Enviroment Variables. Сначала убедитесь, что вы добавили нужную версию TypeScript:C:\Program Files (x86)\Microsoft SDKs\TypeScript\1.7;C:\Users\serban\AppData\Roaming\npm

Это также повлияет на ваш CLI:

$ tsc -v
message TS6029: Version 1.7.5
Шербан Гицэ
источник
4

Насколько я понимаю, VS не имеет ничего общего с TS, установленной NPM. (Вы можете заметить, что после установки TS с помощью NPM файл tsc.exe отсутствует). VS предназначается только для tsc.exe, установленного TS для расширения VS, которое устанавливает TS в c: \ Program Files (x86) \ Microsoft SDKs \ TypeScript \ XY. У вас может быть несколько папок в папке c: \ Program Files (x86) \ Microsoft SDKs \ Машинопись. Установите для TypeScriptToolsVersion наибольшую установленную версию. В моем случае у меня были папки "1.0", "1.7", "1.8", поэтому я установил TypeScriptToolsVersion = 1.8, и если вы запустите tsc - v внутри этой папки, вы получите 1.8.3 или что-то еще, однако, когда вы запустите tsc вне этой папки он будет использовать переменную PATH, указывающую на версию TS, установленную NPM, что в моем случае 1.8.10. Я считаю, что TS для VS всегда будет немного отставать от последней версии TS, которую вы устанавливаете с помощью NPM.

Monstro
источник
4

Во-первых, убедитесь, что у вас есть следующий адрес в вашем Environment Variables Path

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

Затем откройте Command Promptи введите следующую команду:

tsc -v
Мохаммад Даян
источник
4

Это можно сделать, npm list | grep typescriptесли он установлен через npm.

Перезвони
источник
2

Для подхода без использования командной строки вы можете открыть окно Расширения и обновления (Инструменты-> Расширения и обновления) и выполнить поиск Typescript для расширения Microsoft Visual Studio в разделе Установлено

FlintZA
источник
2

Откройте командную строку (обычную, а не VS) или PowerShell.

tsc.exe -v tsc.cmd -v tsc -v

Если вы установили одну и ту же версию TypeScript для Visual Studio и используете npm, выходные данные этих трех команд должны быть одинаковыми.

Если нет, проверьте системный PATH, чтобы увидеть, где находится иерархия путей и какой каталог машинописи указан в списке. Для пользователей PowerShell простой способ: $env:path -split ';'

Будьте осторожны, чтобы в вашей системной переменной PATH не было ничего или нескольких каталогов TypeScript. По состоянию на 9 июня 2017 года мой системный PATH выглядел следующим образом (только верхняя часть, и это все, что имеет значение в данной ситуации): ps>$env:path -split ';' C:\Windows\system32 C:\Windows C:\Windows\System32\Wbem C:\Windows\System32\WindowsPowerShell\v1.0\ C:\Program Files (x86)\Microsoft SDKs\TypeScript\2.3 C:\nodejs\ C:\Users\{username}\AppData\Roaming\npm

Обратите внимание, что в PATH включен только каталог 2.3, а не несколько версий.

user3785010
источник
1

В командной строке просто введите 1 следующей команды и нажмите Enter :

  • tsc -v

    или

  • tsc -version

    или

  • tsc --version

Примечание. Перед выполнением команды убедитесь, что вы добавили Typescript в путь к переменной среды, подробности здесь: Как установить переменную среды .

Mwiza
источник
он говорит "TSC не признается".
Кейт
Убедитесь, что машинный текст установлен в переменных окружения, в моем случае это выглядит так: C: \ Program Files (x86) \ Microsoft SDKs \ TypeScript \ 2.2
Mwiza