Используйте декоратор Input()
для передачи данных. В вашем случае тот, кто отправляет данные другому компоненту, является родителем. Кто получает данные, так это Ребенок. Когда вам нужно отправить данные от Родителя к Ребенку, мы используем @Input()
. Когда нам нужно отправить данные от ребенка к родительскому, мы используем @OutOut()
и EventEmitter
.
В вашем случае его определенно component1 является родительским, а component2 - дочерним.
В вашем component1.ts, определите свойство, которое должно передавать данные компоненту 2. В моем случае, скажем, personDetails
. И в вашем методе onclick выполните свои операции и назначьте детали свойству personDetails
.
export class Component1 {
personDetails: ShiftDetail;
onClickFilter(data: any) {
// do the logics
this.personDetails = data;
}
}
В вашем файле component2.ts определите свойство с @Input()
декоратором. Это свойство будет получать детали от component1.
export class Component2 {
@Input() personDetailsInput: ShiftDetail;
}
Чтобы назначить детали из свойства component1 personDetails
для component2 personDetailsInput
, используйте файл component1. html. Используйте привязку свойства, чтобы присвоить значение.
<component2 [personDetailsInput]="personDetails"></component2>
Для справки используйте Angular официальную документацию. Приложение-герой-злодей определит все.