Oordrag van data na die setter van 'n kindkomponent in Angular
Jy kan dit so maak dat data van die ouerkomponent in die setter van 'n private eienskap beland. Kom ons kyk na 'n voorbeeld. Laat ons sê ons het 'n private eienskap met 'n setter en 'n getter:
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;
}
}
Vir die voorbeeld, laat ons 'n setter vir ouderdom maak, waarin ons 'n kontrole van die oorgedraagde data implementeer. Laat ons ook 'n getter maak om die eienskappe van die gebruiker uit te voer:
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;
}
}
Laat ons nou data van die ouerkomponent na die kindkomponent oordra:
<user-data name="john"></user-data>
En in die kindkomponent, vertoon ons die oorgedraagde naam op die skerm:
<p>{{ name }}</p>
Verduidelik hoekom die private eienskap _name
met 'n onderstreep-simbool begin.
Implementeer setters en getters vir die naam van die produk en sy prys, wat van die ouerkomponent oorgedra sal word.