Вызов ошибки путем создания монорепозитория с циклическими зависимостями

Я относительно новичок в monrepo's / yarn workspaces / lerna. Я работал над монорепозиторием React / TypeScript, где убрал циклические зависимости. Я просто думаю, что они не должны существовать в архитектуре чистого кода. Я знаю, что они облегчают жизнь, когда вы хотите провести рефакторинг частей приложения, изучить архитектуру приложения или просто сослаться на один из репозиториев в другом проекте.

Но может ли кто-нибудь предоставить хороший пример того, где циклическая зависимость на самом деле вызывает ошибку в проекте TypeScript / React? Возможно, связано с циклическим импортом типов или где-то еще?

Спасибо заранее!

Ахим


person Achim    schedule 17.02.2021    source источник
comment
Не могли бы вы объяснить, что вы имеете в виду, говоря make life easier?   -  person t1gor    schedule 19.03.2021


Ответы (1)


У нас было несколько циклических зависимостей в нашем проекте, которые были связаны с различиями в сборщиках (babel для react & metro для react-native).

Но может ли кто-нибудь предоставить хороший пример того, где циклическая зависимость на самом деле вызывает ошибку в проекте TypeScript / React?

Конечно, примите во внимание следующее:

  • Модуль A imported в модуле B
  • Модуль B imported в модуле C
  • Модуль C imports модуль A

Таким образом, зависимости модулей не могут быть разрешены, по крайней мере, неправильно.

Я просто думаю, что они не должны существовать в архитектуре чистого кода.

Это точно правда :) Так держать!

person t1gor    schedule 19.03.2021