Les deux révisions précédentes Révision précédente Prochaine révision | Révision précédente |
richclient:emberjs:td1 [2019/01/22 22:39] – jcheron | richclient:emberjs:td1 [2019/08/31 14:21] (Version actuelle) – modification externe 127.0.0.1 |
---|
- Créer/manipuler les templates | - Créer/manipuler les templates |
- Créer des classes et instancier des objets | - Créer des classes et instancier des objets |
- Mettre en oeuvre le Data-binding avec [[https://guides.emberjs.com/v2.18.0/object-model/computed-properties/|computed properties]] | - Mettre en oeuvre le Data-binding avec [[https://guides.emberjs.com/release/object-model/computed-properties/|computed properties]] |
| |
==== - Fonctionnalités ==== | ==== - Fonctionnalités ==== |
| |
Fichier **app/routes/ex1.js** | Fichier **app/routes/ex1.js** |
| |
| <sxh bash;gutter:false> |
| ember g route ex1 |
| </sxh> |
| |
|< 100% >| | |< 100% >| |
^**Route** | **ex1** | | ^**Route** | **ex1** | |
^::: | <html><span class="method">model()</span></html>model hook, doit retourner une instance de Note | | ^::: | <html><span class="method">model()</span></html>model hook, doit retourner une instance de Note | |
^Actions | <html><span class="method">save()</span></html>\\ Pseudo enregistrement (Affiche enregistrement + contenu de la note) | | |
| Fichier **app/controllers/ex1.js** |
| |
| <sxh bash;gutter:false> |
| ember g controller ex1 |
| </sxh> |
| |
| ^Controller | **ex1** | |
| ^Actions |<html><span class="method">save()</span></html>\\ Pseudo enregistrement (Affiche enregistrement + contenu de la note) | |
^::: | <html><span class="method">clear()</span></html>\\ vide noteContent | | ^::: | <html><span class="method">clear()</span></html>\\ vide noteContent | |
| |
==== - Vue ==== | ==== - Vue ==== |
=== - helpers handlebars utilisés === | === - helpers handlebars utilisés === |
* <nowiki>{{expression}}</nowiki> voir [[https://guides.emberjs.com/v2.18.0/templates/handlebars-basics/|expressions]] | * <nowiki>{{expression}}</nowiki> voir [[https://guides.emberjs.com/release/templates/handlebars-basics/|expressions]] |
* <nowiki>{{textarea ...}}</nowiki> voir [[https://guides.emberjs.com/v2.18.0/templates/input-helpers/#toc_text-areas|textarea]] | * <nowiki>{{textarea ...}}</nowiki> voir [[https://guides.emberjs.com/release/templates/input-helpers/#toc_text-areas|textarea]] |
* <nowiki>{{action...}}</nowiki> voir [[https://guides.emberjs.com/v2.18.0/templates/actions/|actions]] | * <nowiki>{{action...}}</nowiki> voir [[https://guides.emberjs.com/release/templates/actions/|actions]] |
=== -- Interface === | === - Interface === |
| |
{{:slam4:richclient:angularjs:ex1-note.png?400|}} | {{:slam4:richclient:angularjs:ex1-note.png?400|}} |
| |
==== - Application ==== | ==== - Application ==== |
| |
| Fichier **app/route/ex2.js** |
| |
| <sxh bash;gutter:false> |
| ember g route ex2 |
| </sxh> |
| |
|< 100% >| | |< 100% >| |
^::: | <html><span class="method">countActive</span></html>\\ Retourne le nombre de services actifs (* sur services.@each.active) | | ^::: | <html><span class="method">countActive</span></html>\\ Retourne le nombre de services actifs (* sur services.@each.active) | |
^::: | <html><span class="method">sumActive</span></html>\\ Retourne le montant total correspondant aux services actifs (* sur services.@each.active) | | ^::: | <html><span class="method">sumActive</span></html>\\ Retourne le montant total correspondant aux services actifs (* sur services.@each.active) | |
^**Route** | **ex2**| | ^**Route** | **ex2** | |
| ^::: | <html><span class="method">model()</span></html>model hook, doit retourner une instance de **Services** initialisée avec le tableau ci-dessous | |
| |
| Fichier **app/controllers/ex2.js** |
| |
| <sxh bash;gutter:false> |
| ember g controller ex2 |
| </sxh> |
| |
| |< 100% >| |
| ^**Controller** | **ex2**| |
^Actions | <html><span class="method">toggleActive(service)</span></html>\\ Change le statut du service | | ^Actions | <html><span class="method">toggleActive(service)</span></html>\\ Change le statut du service | |
| |
| |
=== A utiliser === | === A utiliser === |
* [[https://www.emberjs.com/api/ember/2.16/classes/@ember%2Fobject%2Fcomputed/methods/alias?anchor=filterBy&show=inherited%2Cprotected%2Cprivate%2Cdeprecated|filterBy]] pour filtrer les services en fonction de leur propriété **active** | * [[https://www.emberjs.com/api/ember/3.7/classes/@ember%2Fobject%2Fcomputed/methods/alias?anchor=filterBy&show=inherited%2Cprotected%2Cprivate%2Cdeprecated|filterBy]] pour filtrer les services en fonction de leur propriété **active** |
* [[https://developer.mozilla.org/fr/docs/Web/JavaScript/Reference/Objets_globaux/Array/forEach|forEach]] pour le parcours des services | * [[https://developer.mozilla.org/fr/docs/Web/JavaScript/Reference/Objets_globaux/Array/forEach|forEach]] pour le parcours des services |
| |