Машинописный текст: tsc не распознается как внутренняя или внешняя команда, работающая программа или командный файл

Я начинающий с типом сценария. Я не могу скомпилировать файл сценария типа.

Когда я нажимаю Ctrl+Shift+B в коде VS, я получаю сообщение об ошибке "TSC не распознается"

Я использовал npm при загрузке стенограммы.

C:\Users\sramesh>npm install -g typescript
C:\Users\sramesh\AppData\Roaming\npm\tsserver -> C:\Users\sramesh\AppData\Roaming\npm\node_modules\typescript\bin\tsserver
C:\Users\sramesh\AppData\Roaming\npm\tsc -> C:\Users\sramesh\AppData\Roaming\npm\node_modules\typescript\bin\tsc
C:\Users\sramesh\AppData\Roaming\npm
`-- typescript@2.1.5

Вот мой файл tasks.json

{
    // See https://go.microsoft.com/fwlink/?LinkId=733558
    // for the documentation about the tasks.json format
    "version": "0.1.0",
    "command": "C:\\Users\\sramesh\\AppData\\Roaming\\npm\\node_modules\\typescript\\bin\\tsc",
    "isShellCommand": true,
    "args": [],
    "showOutput": "silent",
    "problemMatcher": "$tsc"
}

Кто-нибудь может помочь?

7 ответов

Решение

Ты пробовал бегать tsc --init в вашем каталоге? Это создаст tsconfig.json файл в вашем каталоге, где вы можете определить свою конфигурацию. VSCode также начнет использовать этот файл, как только найдет его в корневом каталоге.

Проверьте документацию tsconfig.json для более подробной информации.

Я использую ОС Windows и по какой-то причине отмеченный ответ у меня не сработал. Я попробовал tsc--init и мне вернули ту же ошибку. Я обновил переменную пути на C:\Users\"UserName"\AppData\Roaming\npm и это сработало..

Примечание: замените имя пользователя своим именем пользователя.

У меня была похожая проблема, и я даже не показывал версию Typescript после ввода tsc -v. Даже я должен был почесать голову в течение нескольких дней и не мог решить это.

Наконец я сделал 4 вещи.

  1. установлена ​​последняя версия nodejs, то есть 8.1.3
  2. установлен npm, который составляет 5.1.0 ( npm установить npm@latest -g)
  3. установленная машинопись 2.4.1 ( npm install -g typcript)
  4. как предложено @Uzair Sajid выше. (tsc --init)

Теперь я могу увидеть версию TS, а также скомпилировать код TS.

После установки простое решение, которое я попробовал, - просто установить переменную пути в переменных среды до папки, в которой установлен npm.

      C:\Users\"Username"\AppData\Roaming\npm

где Username будет вашим собственным именем пользователя.

Затем откройте cmd, перейдите в папку npm, используя cd AppData/Roaming/npmи введите, он запустится. Теперь просто закройте cmd, откройте его снова и введите tsc --version ИЛИ ЖЕ tsc, он будет работать успешно.

Я попытался с помощью командной строки установить цель.

tsc first.ts --target ES5

Это создало first.js(скрипт скомпилированного типа в формате javascript). Я вручную переместил этот файл в папку scripts.

Теперь, когда я запустил сервер, используя lite-server команда. Браузер может найти файл first.js и запустить код машинописи.

Мне удалось решить эту проблему на рабочем столе Windows 10 21H1 следующим образом:

  1. Установить пакет typescript глобально → npm install -g typescript

  2. Обновление переменной окружения:

    • Поиск Environment Variablesв стартовом меню
    • Выбирать Edit the system environment variables
    • Выберите Environment Variables...кнопка в Advancedраздел
    • Посмотрите в System Variablesраздел для Pathпеременная
    • Дважды щелкните эту переменную
    • Выбирать New...
    • Введите место, куда ваша конфигурация npm загружает глобальные пакеты. Узнать где можно с помощью npm list -gкоманда. Для меня это было в C:\Users\MyUsername\AppData\Roaming\npm- обязательно заменить MyUsernameс вашим именем пользователя
  3. Повторно/открыть активный терминал

  4. Использовать tsc -vкоманда наблюдать за результатом

У меня была такая же проблема с машинописным текстом, «tsc» не распознается в терминале.

До того, как я установил машинописный текст с пряжей вроде «yarn global add typescript», а затем я установил машинописный текст с npm, например «npm install -g typescript», и проблема была решена, Терминал знал команды машинописного текста и сам.

Может быть, этот ответ будет полезен

Другие вопросы по тегам