Différences
Ci-dessous, les différences entre deux révisions de la page.
| Les deux révisions précédentes Révision précédente Prochaine révision | Révision précédente | ||
| richclient:emberjs:td1 [2018/01/23 10:59] – jcheron | richclient:emberjs:td1 [2019/08/31 14:21] (Version actuelle) – modification externe 127.0.0.1 | ||
|---|---|---|---|
| Ligne 13: | Ligne 13: | ||
| - | ==== -- Création du repository git ==== | + | ==== - Création du repository git ==== |
| - Créer un dossier **ember-tds** ; | - Créer un dossier **ember-tds** ; | ||
| Ligne 20: | Ligne 20: | ||
| - Publier (commit and push) régulièrement sur github. | - Publier (commit and push) régulièrement sur github. | ||
| - | ===== -- Exercice : application Note ===== | + | ==== - Création du projet ember ==== |
| - | ==== -- Objectifs ==== | + | Créer le projet ember **td1** |
| + | |||
| + | ===== - Exercice : application Note ===== | ||
| + | |||
| + | ==== - Objectifs ==== | ||
| - Créer un projet | - Créer un projet | ||
| - Créer des routes | - Créer des routes | ||
| - Créer/ | - Créer/ | ||
| - Créer des classes et instancier des objets | - Créer des classes et instancier des objets | ||
| - | - Mettre en oeuvre le Data-binding avec [[https:// | + | - Mettre en oeuvre le Data-binding avec [[https:// |
| - | ==== -- Fonctionnalités ==== | + | ==== - Fonctionnalités ==== |
| - Saisir une note (message textuel) et afficher le nombre de caractères restants (le message est limité à 100 caractères saisis) | - Saisir une note (message textuel) et afficher le nombre de caractères restants (le message est limité à 100 caractères saisis) | ||
| - Enregistrer (pseudo enregistrement) | - Enregistrer (pseudo enregistrement) | ||
| Ligne 36: | Ligne 40: | ||
| - Gérer les changements de classe CSS sur l' | - Gérer les changements de classe CSS sur l' | ||
| - | ==== -- Application ==== | + | ==== - Application ==== |
| Fichier **app/ | Fichier **app/ | ||
| + | |||
| + | <sxh bash; | ||
| + | ember g route ex1 | ||
| + | </ | ||
| |< 100% >| | |< 100% >| | ||
| Ligne 50: | Ligne 58: | ||
| ^**Route** | **ex1** | | ^**Route** | **ex1** | | ||
| ^::: | < | ^::: | < | ||
| - | ^Actions | < | + | |
| + | Fichier **app/ | ||
| + | |||
| + | <sxh bash; | ||
| + | ember g controller ex1 | ||
| + | </ | ||
| + | |||
| + | ^Controller | **ex1** | | ||
| + | ^Actions |< | ||
| ^::: | < | ^::: | < | ||
| (*) computed property | (*) computed property | ||
| - | ==== -- Vue ==== | + | ==== - Vue ==== |
| - | === -- helpers handlebars utilisés === | + | === - helpers handlebars utilisés === |
| - | * < | + | * < |
| - | * < | + | * < |
| - | * < | + | * < |
| - | === -- Interface === | + | === - Interface === |
| {{: | {{: | ||
| - | === -- Logique applicative / comportement de l' | + | === - Logique applicative / comportement de l' |
| * sur saisie dans la zone **messageNote** (textarea), le nombre de caractères restants est indiqué dans la zone **status** | * sur saisie dans la zone **messageNote** (textarea), le nombre de caractères restants est indiqué dans la zone **status** | ||
| Ligne 75: | Ligne 91: | ||
| * Sur effacement (à condition que le message ne soit pas vide) : | * Sur effacement (à condition que le message ne soit pas vide) : | ||
| * la zone **info** disparaît | * la zone **info** disparaît | ||
| - | === -- Test en ligne === | + | === - Test en ligne === |
| < | < | ||
| - | ===== -- Exercice : Choix de services ===== | + | ===== - Exercice : Choix de services ===== |
| - | ==== -- Objectifs ==== | + | ==== - Objectifs ==== |
| - Créer des routes avec model | - Créer des routes avec model | ||
| - Utiliser/ | - Utiliser/ | ||
| Ligne 85: | Ligne 101: | ||
| - Utiliser les tableaux | - Utiliser les tableaux | ||
| - | ==== -- Fonctionnalités ==== | + | ==== - Fonctionnalités ==== |
| - Sélectionner/ | - Sélectionner/ | ||
| - Calculer le montant dû | - Calculer le montant dû | ||
| - Afficher le nombre de services sélectionnés | - Afficher le nombre de services sélectionnés | ||
| - | ==== -- Application ==== | + | ==== - Application ==== |
| + | |||
| + | Fichier **app/ | ||
| + | |||
| + | <sxh bash; | ||
| + | ember g route ex2 | ||
| + | </ | ||
| |< 100% >| | |< 100% >| | ||
| ^**Classe** | **Services** | ^**Classe** | **Services** | ||
| ^::: | < | ^::: | < | ||
| - | ^::: | < | ||
| ^::: | < | ^::: | < | ||
| ^::: | < | ^::: | < | ||
| - | ^**Route** | **ex2**| | + | ^**Route** | **ex2** | |
| + | ^::: | < | ||
| + | |||
| + | Fichier **app/ | ||
| + | |||
| + | <sxh bash; | ||
| + | ember g controller ex2 | ||
| + | </ | ||
| + | |||
| + | |< 100% >| | ||
| + | ^**Controller** | **ex2**| | ||
| ^Actions | < | ^Actions | < | ||
| Ligne 105: | Ligne 136: | ||
| === A utiliser === | === A utiliser === | ||
| - | * [[https:// | + | * [[https:// |
| * [[https:// | * [[https:// | ||
| - | **Services** : à passer en paramètre | + | **Services** : à passer en paramètre |
| + | <sxh javascript> | ||
| + | Services.create({services: | ||
| + | </ | ||
| <sxh javascript> | <sxh javascript> | ||
| Ligne 133: | Ligne 167: | ||
| </ | </ | ||
| - | ==== -- Vue ==== | + | ==== - Vue ==== |
| - | === -- helpers utilisés === | + | === - helpers utilisés === |
| * Expressions < | * Expressions < | ||
| * < | * < | ||
| Ligne 140: | Ligne 174: | ||
| * < | * < | ||
| - | === helpers à créer === | + | === - helpers à créer === |
| |< 100% >| | |< 100% >| | ||
| ^Nom ^Paramètres ^Rôle ^ | ^Nom ^Paramètres ^Rôle ^ | ||
| |plural | count, zero, one, other | Formate une expression correctement en fonction de count | | |plural | count, zero, one, other | Formate une expression correctement en fonction de count | | ||
| - | |format-currency | value | Formate value en monétaire (2 déc + symbole €) | | + | |format-currency | value, symbol |
| |format-percent| value | Formate value en pourcentage (x100 + symbole %) | | |format-percent| value | Formate value en pourcentage (x100 + symbole %) | | ||
| - | === -- Interface === | + | === - Interface === |
| {{: | {{: | ||
| Ligne 157: | Ligne 191: | ||
| * La sélection/ | * La sélection/ | ||
| - | === -- Ajout code promo === | + | === - Ajout code promo === |
| * La saisie d'un code promo permet d' | * La saisie d'un code promo permet d' | ||
| * La liste des codes est fournie en JS, elle sera a ajouter au model hook | * La liste des codes est fournie en JS, elle sera a ajouter au model hook | ||
| Ligne 170: | Ligne 204: | ||
| {{: | {{: | ||
| - | === -- Test en ligne === | + | === - Test en ligne === |
| < | < | ||