Input
Last updated
Was this helpful?
Last updated
Was this helpful?
Pour transmettre des données à un "child component", nous allons communiquer avec ce dernier de la même façon que nous contrôlons les propriétés d'un élément natif, c'est à dire à l'aide du :
On obtient alors un "set" implicite de la propriété book
de l'instance du composant BookPreviewComponent.
Remarquez la similarité avec le sur des éléments natifs.
Avec le code précédent, nous obtenons l'erreur suivante :
En effet, le composant book-preview n'a pas de propriété book
. Il faut donc la déclarer :
... mais heureusement, cela ne suffit pas et nous obtenons toujours la même erreur.
@Input()
Voyez ce décorateur comme un contrôle vous permettant de définir la visibilité d'une propriété d'un composant.
N'oubliez pas les parenthèses !
En réalité, Input
est une "factory" qui retourne un décorateur. Si vous l'utilisez comme décorateur @Input book
, elle n'aura aucune action et ne fonctionnera donc pas.
Par défaut, aucune propriété de composant ne peut être modifiée par . Il faut donc définir les propriétés pouvant servir d' "input" au composant en ajoutant simplement le décorateur @Input()
.