Перейти к основному содержимому

Наследование

Значение extends представляет собой строку, содержащую путь к другому файлу конфигурации для наследования. Путь может использовать разрешение стиля Node.js.

Конфигурация из базового файла загружается первой, а затем переопределяется конфигурациями из унаследованного файла конфигурации. Все относительные пути, найденные в файле конфигурации, будут разрешены относительно файла конфигурации, в котором они возникли.

Внимание!

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

Стоит отметить, что файлы files, include и exclude из наследуемого файла конфигурации п ерезаписывают файлы из базового файла конфигурации, а цикличность между файлами конфигурации не допускается.

В настоящее время единственным свойством верхнего уровня, которое исключено из наследования, является references.

Пример

configs/base.json
{
"compilerOptions": {
"noImplicitAny": true,
"strictNullChecks": true
}
}
tsconfig.json
{
"extends": "./configs/base",
"files": ["main.ts", "supplemental.ts"]
}
tsconfig.nostrictnull.json
{
"extends": "./tsconfig",
"compilerOptions": {
"strictNullChecks": false
}
}