Prenos dát do settera dcérskeho komponentu v Angular
Môžeme zaariadiť, aby dáta z rodičovského komponentu prešli do settera privátnej vlastnosti. Pozrime sa na príklad. Predpokladajme, že máme privátnu vlastnosť s setterom a getterom:
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;
}
}
Pre príklad vytvorme setter veku, v ktorom implementujeme kontrolu odovzdaných dát. Takisto vytvorme getter pre výpis vlastností používateľa:
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;
}
}
Teraz odovzdajme dáta z rodičovského komponentu do dcérskeho:
<user-data name="john"></user-data>
A v dcérskom komponente vypíšme odovzdané meno na obrazovku:
<p>{{ name }}</p>
Vysvetlite, prečo privátna vlastnosť _name
začína symbolom podčiarknutia.
Implementujte settery a gettery pre názov produktu a jeho cenu, ktoré budú odovzdávané z rodičovského komponentu.