TypeScript в VS Code: [ts] Невозможно сохранить имя консоли - PullRequest
0 голосов
/ 24 мая 2018

Я только что установил свежий код Visual Studio 1.23.1 на мой MAC и открыл каталог с одним простым файлом main.ts (там нет tsconfig.json):

function getFinalPrice(price: number, discount: number) {
  return price - price/discount;
}

console.log(getFinalPrice(100, 10));

Слово console - этоподчеркнута волнистой красной линией, и ошибка гласит:

[ts] Cannot file the name console".

Я проверил каталог установки VS Code - в нем есть файл .../extensions/node_modules/typescript/lib/lib.es2016.full.d.ts,у которого есть эта строка:

declare var console: Console;

Почему мой код VS не получает его?

Мой коллега попробовал тот же код, и он не видит эту ошибку.Разница лишь в том, что у меня недавно установленный VS Code.В чем может быть проблема?

Обновление: после добавления простого файла tsconfig.json ошибка исчезла.

{
    "compilerOptions": { 
        "noEmitOnError": true, 
        "target": "es5"
    }
  }

Обязательно ли иметь tsconfig.json в проектах VS Code?

Ответы [ 2 ]

0 голосов
/ 24 мая 2018

На самом деле причина этой ошибки описана в документации по коду VS по адресу https://code.visualstudio.com/docs/languages/typescript#_typescript-files-and-projects

Без CS-кода tsconfig.json работает в режиме области действия файла, и вы можете использовать только код, определенный вфайл, который не был в случае с console.

0 голосов
/ 24 мая 2018

Вам необходим файл tsconfig.json, так как здесь будут указаны определения lib, одно из которых будет содержать определение console.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...