Transmiterea datelor în setter-ul componentei copil în Angular

Se poate face ca datele din componenta părinte să ajungă în setter-ul proprietății private. Să ne uităm la un exemplu. Să presupunem că avem o proprietate privată cu setter și getter:

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;
  }
}

Pentru exemplu, să facem un setter pentru vârstă, în care să implementăm o verificare a datelor transmise. De asemenea, să facem un getter pentru afișarea proprietăților utilizatorului:

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;
  }
}

Acum să transmitem datele din componenta părinte în componenta copil:

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

Și în componenta copil să afișăm numele transmis pe ecran:

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

Explicați de ce proprietatea privată _name începe cu simbolul underscore.

Задание 2

Implementați setteri și getteri pentru numele produsului și prețul acestuia, care vor fi transmise din componenta părinte.