Prosleđivanje podataka seteru podređene komponente u Angularu

Moguće je postići da podaci iz roditeljske komponente dospeju u seter privatnog svojstva. Pogledajmo na primeru. Pretpostavimo da imamo privatno svojstvo sa seterom i geterom:

app/user/user.component.tsclass UserComponent {
  private _name: string = '';
  
  set name(name: string) {
    if (name.length < 3) {
      this._name = name;
    } else {
      console.log('error');
    }
  }
  
  get age() {
    return this._userAge;
  }
}

Za primer, napravimo seter za godine, u kojem ćemo implementirati proveru prosleđenih podataka. Takođe napravimo geter za prikaz svojstava korisnika:

app/user/user.component.tsclass 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;
  }
}

Sada prosledimo podatke iz roditeljske komponente u podređenu:

app/app.component.html<user-data name="john"></user-data>

A u podređenoj komponenti prikažimo prosleđeno ime na ekranu:

app/user/user.component.html<p>{{ name }}</p>
Задание 1

Objasnite zašto privatno svojstvo _name počinje znakom za donju crtu.

Задание 2

Implementirajte setere i getere za naziv proizvoda i njegovu cenu, koji će biti prosledjeni iz roditeljske komponente.