მონაცემების გადაცემა ქილდ კომპონენტის სეტერში Angular-ში
შესაძლებელია ისე მოვიქცეთ, რომ მონაცემები მშობელი კომპონენტიდან მოხვდეს სეტერში პრივატული ფროფერთის. მოდით შევხედოთ მაგალითს. დავუშვათ, რომ გვაქვს პრივატული ფროფერთი სეტერით და გეტერით:
class UserComponent {
private _name: string = '';
set name(name: string) {
if (name.length < 3) {
this._name = name;
} else {
console.log('error');
}
}
get age() {
return this._userAge;
}
}
მაგალითისთვის მოდით გავაკეთოთ ასაკის სეტერი, რომელშიც გავაერთიანებთ გადაცემული მონაცემების შემოწმებას. ასევე გავაკეთოთ გეტერი მომხმარებლის ფროფერთების გამოსატანად:
class UserComponent {
private _name: string = '';
@Input()
set name(name: string) {
if (name.length > 3) {
this._name = name;
} else {
console.log('error');
}
}
get name() {
return this._name;
}
}
ახლა გადავცეთ მონაცემები მშობელი კომპონენტიდან ქილდ კომპონენტში:
<user-data name="john"></user-data>
და ქილდ კომპონენტში გამოვიტანოთ გადაცემული სახელი ეკრანზე:
<p>{{ name }}</p>
ახსენით, რატომ იწყება პრივატული ფროფერთი _name
უნდერსკორის სიმბოლოთი.
გააკეთეთ სეტერები და გეტერები პროდუქტის სახელის და მისი ფასისთვის, რომლებიც გადაეცემა მშობელი კომპონენტიდან.