⊗jsagPmCMCSP 66 of 97 menu

Transmissão de dados para o setter de um componente filho no Angular

É possível fazer com que os dados do componente pai sejam passados para o setter de uma propriedade privada. Vamos ver um exemplo. Suponha que temos uma propriedade privada com setter e 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; } }

Para o exemplo, vamos criar um setter para a idade, no qual implementaremos uma verificação dos dados transmitidos. Também vamos criar um getter para exibir as propriedades do usuário:

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

Agora vamos transmitir dados do componente pai para o filho:

<user-data name="john"></user-data>

E no componente filho, exibiremos o nome transmitido na tela:

<p>{{ name }}</p>

Explique por que a propriedade privada _name começa com um sublinhado.

Implemente setters e getters para o nome do produto e seu preço, que serão transmitidos do componente pai.

azbydeenesfrkakkptruuz