Spec-Zone.ru › TypeScript 5.1

Что такое tsconfig.json

Обзор

Наличие файла tsconfig.json в каталоге указывает, что этот каталог является корнем проекта TypeScript. Файл tsconfig.json определяет корневые файлы и параметры компилятора, необходимые для компиляции проекта.

Проекты JavaScript могут использовать файл jsconfig.json вместо него, который действует практически так же, но по умолчанию включает некоторые параметры компилятора, относящиеся к JavaScript.

Проект компилируется одним из следующих способов:

Использование tsconfig.json или jsconfig.json

  • Вызвав tsc без входных файлов, в этом случае компилятор ищет файл tsconfig.json, начиная с текущего каталога и продолжая вверх по цепочке родительских каталогов.
  • Вызвав tsc без входных файлов и с опцией командной строки --project (или просто -p), которая указывает путь к каталогу, содержащему файл tsconfig.json, или путь к допустимому файлу .json, содержащему конфигурации.

Когда входные файлы указаны в командной строке, файлы tsconfig.json игнорируются.

Примеры

Примеры файлов tsconfig.json:

  • Использование свойства files

    {
      "compilerOptions": {
        "module": "commonjs",
        "noImplicitAny": true,
        "removeComments": true,
        "preserveConstEnums": true,
        "sourceMap": true
      },
      "files": [
        "core.ts",
        "sys.ts",
        "types.ts",
        "scanner.ts",
        "parser.ts",
        "utilities.ts",
        "binder.ts",
        "checker.ts",
        "emitter.ts",
        "program.ts",
        "commandLineParser.ts",
        "tsc.ts",
        "diagnosticInformationMap.generated.ts"
      ]
    }
  • Использование свойств include и exclude

    {
      "compilerOptions": {
        "module": "system",
        "noImplicitAny": true,
        "removeComments": true,
        "preserveConstEnums": true,
        "outFile": "../../built/local/tsc.js",
        "sourceMap": true
      },
      "include": ["src/**/*"],
      "exclude": ["**/*.spec.ts"]
    }

Базовые файлы tsconfig

В зависимости от среды выполнения JavaScript, в которой вы планируете запустить свой код, может быть базовая конфигурация, которую можно использовать на github.com/tsconfig/bases. Это файлы tsconfig.json, от которых ваш проект наследуется, что упрощает вашу работу tsconfig.json, обрабатывая поддержку среды выполнения.

Например, если вы пишете проект, который использует Node.js версии 12 и выше, вы можете использовать модуль npm @tsconfig/node12:

{
  "extends": "@tsconfig/node12/tsconfig.json",

  "compilerOptions": {
    "preserveConstEnums": true
  },

  "include": ["src/**/*"],
  "exclude": ["**/*.spec.ts"]
}

Это позволяет вашему проекту tsconfig.json сосредоточиться на уникальных решениях, а не на всех механизмах среды выполнения. Уже доступно несколько баз tsconfig, и мы надеемся, что сообщество добавит больше для разных сред.

Детали

Свойство "compilerOptions" можно опустить, в этом случае используются значения по умолчанию компилятора. См. наш полный список поддерживаемых параметров компилятора.

Ссылка tsconfig

Чтобы узнать больше о сотнях параметров конфигурации в Справочнике TSConfig.

Схема

Схема tsconfig.json находится на странице JSON Schema Store.

© 2012-2023 Microsoft
Licensed under the Apache License, Version 2.0.
https://www.typescriptlang.org/docs/handbook/tsconfig-json.html

Spec-Zone.ru

Настройки Оффлайн Что нового Помощь О нас
Spec-Zone .ru
спецификации, руководства, описания, API