#javascript #angular #typescript #circular-dependency
#javascript #angular #typescript #циклическая зависимость
Вопрос:
Я получаю предупреждение о циклической зависимости при использовании barrelsby в Angular 10.
Error:
WARNING in Circular dependency detected:
srcappcorecomponentscomponents.module.ts -> srcappcorecomponentsheaderheader.component.ts -> srcappstateindex.ts -> srcappcorecomponentscomponents.module.ts
Структура:
/component
/header
header.component.ts
index.ts
index.ts
export * from './header.component';
component.module.ts
import { HeaderComponent } from './header';
@NgModule({
imports: [],
exports: [
HeaderComponent,
],
declarations: [
HeaderComponent
]
})
index.ts
export * from './header/index';
Комментарии:
1. Отредактируйте и добавьте содержимое
header.component.ts
вашего вопроса.2. Иногда вы можете разорвать циклическую зависимость, избегая в какой-то момент импорта из
index.ts
Ответ №1:
Это просто предупреждение, поэтому вам абсолютно не нужно его исправлять. Предупреждение сообщает вам, где находится круг:
- модуль импортирует из заголовка
- импорт заголовка из индекса
- импорт индекса из модуля
Чтобы разорвать круг, я бы избегал импорта из index. Какой бы заголовок компонента не импортировался из index, импортируйте его из этой папки компонентов.
Комментарии:
1. Я пробовал импортировать из компонента, но все равно он выдает то же самое. импортируйте { HeaderComponent } из ‘./header/header.component’;