У меня есть два компонента: родительский и дочерний
parent разрешает обещание в конструкторе, child отображает результат обещания в виде параметра @Input ()
ребенок не получает результат обещания в хуке жизни, кроме afterViewCheck и afterContentCheck, я хочу их избежать.
Я также хочу, чтобы избежать общего сервиса, содержащего общие данные в поведениеSubject или что-то в этом роде
поэтому вопрос в том, можно ли дождаться обещания, прежде чем создавать шаблон с результатом обещания в качестве входного параметра?
Родитель:
// html: <app-chil [brands]="brands"></>
brands: Brand[] = []
constructor() {
this.getBrands()
}
async getBrands() {
this.brands = await new Promise<Brand[]>(resolve =>
this.equipmentService.getBrands().subscribe(brands => resolve(brands)))
}
ребенок:
@Input() brands: Brand[] = []
constructor() { }
ngAfterViewInit() {
console.log(this.brands) // receive brands here
}