Académique Documents
Professionnel Documents
Culture Documents
Tp2 Annexe 3gt TST
Tp2 Annexe 3gt TST
ng new mon-projet
cd mon-projet
ng serve
AppComponent est le component principal : tous les autres components de notre application
seront emboîtés ou "nested" dans celui-ci.
Pour créer un nouveau component à l’aide du CLI d’Angular. Depuis le dossier principal de
votre projet, tapez la commande suivante :
#ou bien
ng g module Components
<div style="text-align:center">
<h1>
</h1>
</div>
<app-mon-premier></app-mon-premier>
Tester l’application
<li class="list-group-item">
</li>
<div class="container">
<div class="row">
<div class="col-xs-12">
<h2>Mes appareils</h2>
<ul class="list-group">
<app-mon-premier></app-mon-premier>
<app-mon-premier></app-mon-premier>
<app-mon-premier></app-mon-premier>
</ul>
</div>
</div>
</div>
2
<li class="list-group-item">
<h4>Appareil:{{appareilName}} -- Statut:{{appareilStatus }}</h4>
</li>
Interpolation : les doubles accolades {{ }} => Ce qui se trouve entre les doubles accolades
correspond à l'expression TypeScript que nous voulons afficher.
Ajoutez dans le fichier mon-premier.component.ts:
Property binding
Pour l’application des appareils électriques, imaginez que si l'utilisateur est authentifié, on lui
laisse la possibilité d'allumer tous les appareils de la maison.
Puisque l'authentification est une valeur globale, ajoutez une variable boolean dans
AppComponent :
<div class="container">
….
</ul>
3
allumer</button> // Ajoutez cette balise
</div>
</div>
</div>
Pour montrer que cette liaison est dynamique, créez une méthode constructor dans
AppComponent , dans laquelle vous créerez une timeout qui associe la valeur true à isAuth
après 4 secondes (pour simuler, par exemple, le temps d'un appel API) :
isAuth = false;
constructor() {
setTimeout(
()=>{
this.isAuth = true;
}, 4000);
}
}
Pour en voir l'effet, rechargez la page dans votre navigateur et observez comment le bouton
s’active au bout de quatre secondes.
4
Event binding : comment réagir dans votre code TypeScript aux événements venant du
template HTML.
Actuellement, vous avez un bouton sur votre template qui s'active au bout de 4 secondes. Vous
allez maintenant lui ajouter une fonctionnalité liée à l'événement "click" (déclenché quand
l'utilisateur clique dessus).
Ajoutez la liaison suivante à votre bouton dans le template HTML. On utilise les parenthèses
() pour créer une liaison à un événement.
onAllumer() {
Propriétés personnalisées
Il est possible de créer des propriétés personnalisées dans un component afin de pouvoir lui
transmettre des données depuis l’extérieur.
Pour l’application des appareils électriques, il serait intéressant de faire en sorte que chaque
appareil ait un nom différent qu'on puisse régler depuis l’extérieur du code. Pour ce faire, il faut
utiliser le décorateur @Input() en remplaçant la déclaration de la variable appareilName.
5
appareilTwo = 'Frigo';
appareilThree = 'Ordinateur';
Maintenant, utilisez les crochets [] pour lier le contenu de ces variables à la propriété du
component :
<li class="list-group-item">