Angular: борьба за структуру компонентов - PullRequest
0 голосов
/ 21 февраля 2020

Я хочу создать angular проект, но с трудом в структуре компонентов.

Я хочу иметь родительский компонент MainComponent

Этот MainComponent должен иметь два дочерних компонента

  1. TimerComponent, который увеличивает elapsedTime. Он будет иметь кнопки запуска и остановки.

  2. GridComponent, который отображает таблицу с соответствующими данными

Все n-секунд данных должны быть перезагружается с сервера и должен отображаться в сетке. Здесь начинаются мои проблемы. Кто должен отвечать за проверку, достигнуты ли n-секунд?
По моему мнению, таймер должен отправлять событие MainComponent при достижении n-секунд.

Но тогда?

Какой компонент отвечает за перезагрузку данных? Должен ли GridComponent отвечать только за отображение данных? Или дополнительно получить данные тоже? Или MainComponent должен извлечь данные и делегировать их GridComponent?

Вот мои идеи для реализации: Первоначально MainComponent будет извлекать данные события. Как имя, дата и длительность события. EventDuration будет @Input (): число в TimerComponent, который сигнализирует таймер, когда событие завершено. TimerComponent имеет @Output (): EventEmitter, который будет генерироваться при достижении reloadInterval. MainComponent получит уведомление и перезагрузит данные сетки с номером параметра события в качестве параметра запроса (name = elapsedTime). Если Observable of the Request разрешен, Grid будет уведомлен о повторном рендеринге строк сетки (я думаю, с @ViewChild?)

...