В Руководстве по стилю Angular 2 есть рекомендация по структуре каталогов: https://angular.io/docs/ts/latest/guide/style-guide.html#04-06
Я вообще думаю, что это хорошая рекомендация, я бы сам хотел сделать что-то очень похожее. Однако у меня возникла проблема с этим, и мне любопытно, решил ли кто-нибудь ее.
Обратите внимание, что модуль heroes
содержит каталог shared
с расширением heroes-button.component
. Предположительно, мы захотим использовать этот компонент во всем приложении (отсюда и «общий»).
Точно так же модуль villains
содержит каталог shared
с расширением villains-button.component
.
Если я хочу использовать villains-button.component
где-то в модуле heroes
, а heroes-button.component
в модуле villains
, то я закончу циклической ссылкой.
Вкратце: Angular не позволяет мне импортировать ModuleA в ModuleB и ModuleB в ModuleA, но в руководстве по стилю указано иное.
У кого-нибудь есть решения для этого сценария?