Есть несколько способов сделать это. Один из способов (возможно, самый простой на этапе, когда вы работаете со своим кодом - см. Демонстрацию Stackblitz ):
<component-b #compB></component-b>
<component-a (pageSizeEmitter)="compB.pSize = $event"></component-a>
В основном мы используем ссылочные переменные шаблона (compB
в приведенный выше код).
Вы можете значительно улучшить этот код, вызвав функцию и передав в качестве аргументов compB
и $event
и сделав все остальное в коде ts.
И будьте предупреждены что *ngIf
на <component-b>
разрушит это решение. Итак, на вашем месте я бы использовал больше машинописного кода:
@ViewChild('compB') _compB: ComponentBComponent;
_setPageSize(pageSize: number) {this._compB.pSize = pageSize;}
<component-b #compB></component-b>
<component-a (pageSizeEmitter)="_setPageSize($event)"></component-a>
Но если бы я делал это в рабочем коде, я бы делал это с помощью сервисов, или, что еще лучше , используя полное решение для управления состоянием, например, ngrx.