монорепо?
Структура:
-@lib1
-@lib2
-@types
Хочется сделать так, чтобы и lib1 и lib2 могли использовать типы из types и tsc запущенный в lib1/lib2 с emitDeclarationOnly:true тоже подтягивал бы типы из types в output
на сколько общие? может какие-то полезные типы-дженерики?
Совсем общие. Кратко: Lib2 создана для загрузки Lib1, путем инжекта тега script. Пример: Lib1 при загрузке в браузере создаёт window.myLib = class Test {...} Lib2 экспортирует метод loadLib():Promise<Test> Вот и не хочется описывать и поддерживать тип Test в двух местах
Я предпочитаю держать типы на том же уровне, где находятся и функционал, а общие на то и общие что не связаны ни с каким функционалом или модулем
В этом вы возможно правы, но кажется что выдрать тип Test из Lib1 и заставить его выводится в declarations для Lib2 будет ещё сложнее
Нужно сделать т.н. Инверсию зависимостей…т.е. описать один интерфейс и его инджектить в обе либы
Обсуждают сегодня