richclient:emberjs:td6

Différences

Ci-dessous, les différences entre deux révisions de la page.

Lien vers cette vue comparative

Les deux révisions précédentes Révision précédente
Prochaine révision
Révision précédente
richclient:emberjs:td6 [2018/03/20 17:52] – [Fonctionnalités à implémenter] jcheronrichclient:emberjs:td6 [2019/08/31 14:21] (Version actuelle) – modification externe 127.0.0.1
Ligne 4: Ligne 4:
  
 |< 100% >| |< 100% >|
-| {{::ember.png?150|}} | Ce projet utilise le repository github : [[https://github.com/s4-dut-info-2018/boards-app|boards-app]] |+| {{::ember.png?150|}} | Ce projet utilise le repository github : [[https://github.com/s4-dut-info-2018/boards-app|boards-app]]\\ Dépôts eCampus :\\  * [[https://ecampus.unicaen.fr/course/view.php?id=12596|parcours 1]]\\  * [[https://ecampus.unicaen.fr/course/view.php?id=12605|parcours 2]] |
 <html></div></html> <html></div></html>
  
Ligne 18: Ligne 18:
 Vous pouvez au choix : Vous pouvez au choix :
   * Partir de votre propre projet et y inclure les éléments du projet Github   * Partir de votre propre projet et y inclure les éléments du projet Github
-  * Partir du projet GitHub pour y intégrer vos propres fonctionnalités+  * Partir du projet GitHub pour y intégrer vos propres fonctionnalités (recommandé) 
 + 
 +Dans le cas 2 (récupération du projet Git) : 
 +Dézipper le projet, le renommer (en board-app), aller dans le dossier, puis exécuter : 
 +<sxh bash;gutter:false> 
 +npm install 
 +npm install -g bower 
 +bower install 
 +</sxh> 
 + 
 +Vérifier le nom de la base de données (propriété **namespace**) dans le fichier **app/adapters/application.js** 
 + 
 +Démarrer les serveurs : mongodb, restheart, ember 
  
 ==== Factorisation des vues ==== ==== Factorisation des vues ====
Ligne 176: Ligne 189:
 </sxh> </sxh>
  
-==== Fonctionnalités à implémenter ====+===== Fonctionnalités à implémenter ===== 
 +==== CRUD ====
  
 <wrap mytodo>**<nowiki>//</nowiki>TODO 1.1**</wrap> <wrap mytodo>**<nowiki>//</nowiki>TODO 1.1**</wrap>
Ligne 190: Ligne 204:
   * Factoriser au mieux le code   * Factoriser au mieux le code
  
 +==== Route index ====
  
 <wrap mytodo>**<nowiki>//</nowiki>TODO 1.2**</wrap> <wrap mytodo>**<nowiki>//</nowiki>TODO 1.2**</wrap>
Ligne 210: Ligne 225:
 </sxh> </sxh>
  
-Il ne reste plus qu'à charger chacun des models dans cette route, pour obtenir le nombre d'instance de chaque dans le template+Il ne reste plus qu'à charger chacun des models dans cette route, pour obtenir le nombre d'instance de chaque dans le template
 + 
 +<sxh javascript;title:app/routes/index.js> 
 +import Ember from 'ember' 
 +import RSVP from 'rsvp'; 
 + 
 +const { Route, getOwner } = Ember; 
 + 
 +export default Route.extend({ 
 +  model() { 
 +    return RSVP.hash({ 
 +      models: getOwner(this).lookup('data-adapter:main').getModelTypes().map(type => { 
 +                      return {name: type.name,objects:this.get('store').findAll(type.name)}; 
 +                      }), 
 +      icons: ['user','table','address card outline','tasks','step forward','tag'
 +    }); 
 +  } 
 +}); 
 +</sxh> 
 + 
 +Il suffit maintenant de parcourir **model.models** dans le template **index.hbs**, et d'afficher pour chaque classe **modelClass** sa propriété **name**: **modelClass.name**, ou le nombre de ses instances : **modelClass.objects.length**.
  
-On pourra utiliser le composant semantic-ui [[https://semantic-ui.com/views/item.html|Item]]+On pourra utiliser le composant semantic-ui [[https://semantic-ui.com/views/item.html|Item]], et le composant [[https://semantic-ui.com/collections/grid.html|Grid]] pour le placement.
  • richclient/emberjs/td6.1521564774.txt.gz
  • Dernière modification : il y a 6 ans
  • (modification externe)