У меня есть две библиотеки, одна из которых отправляет запросы, а другая - протоколирование. Обе библиотеки требуют настройки от клиента, который всегда будет использовать обе из них.
Библиотека запросов выполняет обращения к библиотеке журналов и отображает ее как одноранговую зависимость.
Библиотека журналов имеет одну функцию, которая вызывает метод в библиотеке запросов для вывода журналов. Этот метод свободен от вызовов журнала, чтобы избежать бесконечных циклов. В библиотеке журналов также есть библиотека запросов, указанная в качестве одноранговой зависимости.
Когда я пытаюсь запустить tsc
в библиотеке запросов, он жалуется, что не может импортировать сам. Когда он импортирует библиотеку журналов, библиотека журналов пытается импортировать библиотеку запросов, которую невозможно найти. Очевидно, я не хочу публиковать каждую версию библиотеки запросов с предыдущей собственной версией, вложенной внутрь, поэтому установка старой версии не будет работать.
Я попытался динамически загрузить библиотеку запросов в библиотеке журналов с помощью машинописи await import()
, но она, по-видимому, все еще пытается открыть библиотеку запросов, что вызывает ошибку.
Каков наилучший способ реализации двусторонних библиотечных отношений?