Как мы можем делиться кодом между двумя проектами TypeScript в одном репо? - PullRequest
0 голосов
/ 25 июня 2018

У нас есть структура проекта, подобная этой:

api (dir)

-- package.json

-- tsconfig.json

-- src (dir)

-- client (dir)

---- package.json

---- tsconfig.json

---- src (dir)

"Клиентский" каталог - это проект create-реагировать на приложение, который проксирует API при локальной разработке, отсюда эта структура каталогов.

Мы хотели бы поделиться определенным кодом (константами, утилитами) между двумя проектами.Мы исследовали несколько способов сделать это в TS (например, несколько корневых папок) без успеха.

Как конкретно мы можем настроить совместное использование кода между этими двумя проектами?

1 Ответ

0 голосов
/ 25 июня 2018

Вот как я бы это структурировал:

api
|- src
|- package.json
|- tsconfig.json
client
|- src
|- package.json
|- tsconfig.json
shared
|- src
   |- (shared code goes here)
|- package.json
|- tsconfig.json
package.json
tsconfig.base.json (includes tsconfig options shared between all projects, e.g. strict mode)

Затем вы можете настроить рабочие области пряжи в проекте, чтобы оба проекта могли объявить зависимость от shared, и пряжа будет изящно (насколько это возможно) управлять разрешением зависимостей всех трех.

Обратите внимание, что вам нужно будет скомпилировать код, который есть в shared, чтобы другие проекты могли импортироватьэто правильно.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...