Ответ
TypeScript — мощный инструмент, и для комфортной работы с ним я использую:
- TS Compiler (
tsc) — базовый компилятор с настройкой черезtsconfig.json. - ESLint +
@typescript-eslint— линтинг с TypeScript-правилами. - Prettier — форматирование кода, интегрируется с ESLint.
- Jest +
ts-jest— тестирование с поддержкой TS. - Webpack/Rollup — сборка с
ts-loaderили@rollup/plugin-typescript.
Пример tsconfig.json:
{
"compilerOptions": {
"target": "ES2020",
"module": "ESNext",
"strict": true,
"esModuleInterop": true
}
}
Для быстрого прототипирования — Vite или TS Playground. В IDE — VSCode с плагинами для автодополнения и рефакторинга.
Ответ 18+ 🔞
Да ты посмотри, какой у нас тут серьёзный разговор про TypeScript! Прям как на конференции, блядь. Ну ладно, давай я тебе на человеческом языке объясню, как я с этой мощной хуйней работаю, чтобы не сойти с ума.
Первое дело, конечно, TS Compiler (tsc). Это как наш главный надзиратель, который из моего красивого TypeScript-кода делает что-то понятное для браузера или Node.js. А командует он всем через файлик tsconfig.json. Без него — нихуя не работает, или работает, но как попало.
Потом, чтобы не писать кривой код, как последний распиздяй, ставлю ESLint вместе с плагином @typescript-eslint. Эта связка следит за мной, как хитрая жопа, и орёт, если я где-то накосячил с типами или стилем. Чистота — залог здоровья, ёпта.
А чтобы код выглядел не как пиздопроебибна, а красиво, подключаю Prettier. Он дружит с ESLint, и они вместе так форматируют мой код, что хоть в рамку вешай. Удивление пиздец, как всё ровно становится.
Когда надо проверить, не сломал ли я всё к хуям, в дело идёт Jest с ts-jest. Пишу тесты, запускаю — и сразу видно, где я, мудак, ошибся. Без этого — волнение ебать, каждый раз как в русскую рулетку играешь.
Для сборки всего этого добра в один файл использую либо Webpack с ts-loader, либо Rollup с его TypeScript-плагином. Кто во что горазд, но суть одна: превратить кучу файлов во что-то работающее.
Вот тебе пример того самого tsconfig.json, без которого нихуя:
{
"compilerOptions": {
"target": "ES2020",
"module": "ESNext",
"strict": true,
"esModuleInterop": true
}
}
А если мне нужно быстро набросать какую-то идею, не заморачиваясь со сборкой, я открываю Vite или TS Playground в браузере. Закинул код — и сразу видно результат. Овердохуища удобно!
Ну и в довершение всего, в редакторе (я за VSCode) у меня настроены все плагины для автодополнения и рефакторинга. Нажимаешь пару кнопок — и код сам себя переписывает. Просто ебать мои старые костыли, как же раньше без этого жили! Вот и весь мой секрет, не такой уж и сложный, если разобраться.