- Настроен tsconfig.json со строгой проверкой типов - Добавлена документация на русском языке (tsconfig.README.md) - Automatic JSX runtime (react-jsx) - Алиасы путей для удобного импорта - Include src директории
3.3 KiB
3.3 KiB
Документация tsconfig.json
Описание
Конфигурация TypeScript компилятора для проекта only-task. Определяет параметры компиляции TypeScript кода в JavaScript.
Основные настройки компилятора (compilerOptions)
Выходные файлы
- outDir:
./dist/- Директория для скомпилированных файлов
Проверка типов
- noImplicitAny:
true- Запрет неявного типаany - strict:
true- Включить все строгие проверки типов
Модули
- module:
ESNext- Использование современных ES модулей - target:
es5- Компиляция в ES5 для максимальной совместимости с браузерами - moduleResolution:
node- Разрешение модулей как в Node.js
React и JSX
- jsx:
react-jsx- Автоматический JSX transform для React 19- Не требует импорта React в каждом файле
- Использует новый JSX runtime
Совместимость
- allowJs:
true- Разрешить импорт.jsфайлов в TypeScript - esModuleInterop:
true- Совместимость с CommonJS модулями - allowSyntheticDefaultImports:
true- Разрешить default импорты из модулей без default export
Пути и алиасы
- baseUrl:
.- Базовый путь для разрешения модулей - paths: Настройка алиасов для импортов
Позволяет импортировать файлы из
{ "*": ["./src/*"] }srcбез указания полного пути
Настройки ts-node
Специальные настройки для выполнения TypeScript файлов через ts-node (используется webpack для загрузки webpack.config.ts):
{
"compilerOptions": {
"module": "CommonJS"
}
}
Включенные и исключенные файлы
include
src- Включить все файлы из директории src для компиляции
exclude
.fttemplates/**/*- Исключить шаблоныnode_modules- Исключить зависимостиdist- Исключить скомпилированные файлы
Примеры использования
Проверка типов
pnpm type-check
Использование алиасов путей
// Вместо:
import { Button } from '../../../components/Button'
// Можно писать:
import { Button } from 'components/Button'
JSX без импорта React
// React 19 с автоматическим JSX transform
// Не нужно импортировать React!
const App = () => {
return <div>Hello World</div>
}
Связанные файлы
webpack.config.ts- использует эту конфигурациюeslint.config.mjs- проверяет TypeScript кодsrc/**/*.ts- исходные TypeScript файлыsrc/**/*.tsx- исходные React компоненты