Есть компонент <app-tabs-components>
.
Получает данные от сервиса. В этой службе есть переменная show: boolean
для показа / скрытия компонента на странице.
@Injectable({ providedIn: "root" })
export class TabService {
show = false;
showHide(status: boolean) {
this.show = status;
}
get() {
return this.show;
}
}
Проблема в том, что мне нужно вызывать tabService.showHide(false)
в каждом компоненте, где я хочу скрыть компонент <app-tabs-components>
.
Компонент <app-tabs-components>
всегда должен быть закрыт, если он потерял фокус, а не активную область.
В моем случае я нарушаю принцип DRY.
Например, когда Пользователь активирует любой компонент, который я должен сделать:
ngOnInit() {
tabService.showHide(false)
}
Таким образом, эта часть кода повторяется в каждом компоненте, где я хочу скрыть tabsComponent