Машинопись Компиляция Исключить папки, но сохранить импорт - PullRequest
1 голос
/ 18 июня 2020

У меня есть приложение express Typescript, которое является серверной частью моего веб-приложения. Общая структура root приложения:

- client
    - tsconfig.json
    - React code
- server
    - application.ts
    - tsconfig.json

Мне нужно скомпилировать файлы сервера, чтобы я мог запустить ts-node app.ts. Проблема заключается в том, что запуск tsc компилирует все файлы в каталоге root, а не только каталог server. Я знаю, что могу использовать exclude в tsconfig, но в app.ts у меня есть определения типов, которые импортируются из front-end. Есть ли способ компилировать файлы только в каталоге server, сохраняя при этом импорт?

1 Ответ

1 голос
/ 19 июня 2020

Хорошей практикой является разделение определений типов TypeScript в отдельные файлы, чтобы они не зависели от вашего кода. По соглашению для этого используется расширение файла * .d.ts.

Я предлагаю вам создать другую папку для определений типов и переместить ее так, чтобы она являлась родственником папок server и client . Таким образом, он может быть включен как во фронтенд, так и в бэкэнд компиляцию. Тем не менее, подумайте дважды, прежде чем делиться определениями типов между вашим интерфейсом и серверной частью - иногда это может быть неправильным выбором, если ваши серверные объекты должны хранить более сложные logi c, а ваш интерфейс не нуждается в этом.

...