#angular #typescript
Вопрос:
Это может показаться странным, но у меня здесь есть 3 компонента. Структура файла
Теперь ticket-проекты-новый компонент создается первым, и данные извлекаются из БД в этот компонент. Затем данные передаются из ticket-projects-new в crupdate-ticket-project-модель в файле ts. Затем те же данные передаются из компонента permissionProject-manager через html-файл. Теперь это функция в компоненте crupdate-билет-проект-модель.
public close() {
window.location.reload();
}
здесь я установил его на перезагрузку страницы, потому что он будет повторно загружать данные. Однако есть ли какой-либо способ сделать это, например, создать новый компонент ticket-projects для повторной загрузки данных или перестроить компонент без перезагрузки страницы?
Комментарии:
1. Не могли бы вы, пожалуйста, добавить больше кода? Как вы получаете данные в первую очередь? Как вы передаете его другим компонентам?
Ответ №1:
В компоненте crupdate-билет-проект-модель:
public refreshEvent: EventEmitter<void> = new EventEmitter<void>();
public close() {
this.refreshEvent.emit();
}
Это создает событие, которое мы можем прослушать в компоненте билеты-проекты-новый.
В билете-проекты-новый компонент html, в котором вы инициализируете компонент crupdate-билет-проект-модель:
<crupdate-ticket-project-model (refreshEvent)="refreshMethod($event)" ></crupdate-ticket-project-model>
В билете-проекты-новый компонент ts создайте метод обновления (), который вызовет код обновления, который вы вызовете, когда компонент загрузится, например:
refreshMethod(event: Event){
<WHATEVER_YOU_WANT_TO_REFRESH>
}