Différences
Ci-dessous, les différences entre deux révisions de la page.
| Prochaine révision | Révision précédente | ||
| richclient:emberjs:router:methods [2018/01/25 01:40] – créée jcheron | richclient:emberjs:router:methods [2019/08/31 14:21] (Version actuelle) – modification externe 127.0.0.1 | ||
|---|---|---|---|
| Ligne 1: | Ligne 1: | ||
| - | ====== Méthodes ====== | + | ====== |
| + | ===== afterModel ===== | ||
| + | |||
| + | <sxh javascript; | ||
| + | afterModel (model, transition) | ||
| + | </ | ||
| + | |||
| + | hook appelé après le chargement du model pour la route. | ||
| + | |||
| + | ===== beforeModel ===== | ||
| + | |||
| + | <sxh javascript; | ||
| + | beforeModel (params, transition) | ||
| + | </ | ||
| + | |||
| + | hook appelé avant le chargement du model pour la route. | ||
| + | |||
| + | ===== model ===== | ||
| + | |||
| + | <sxh javascript; | ||
| + | model (params, transition) | ||
| + | </ | ||
| + | |||
| + | hook retournant le model à utiliser pour la route. | ||
| ===== render ===== | ===== render ===== | ||
| Ligne 5: | Ligne 28: | ||
| render (name, options) | render (name, options) | ||
| </ | </ | ||
| + | |||
| + | Affiche le contenu d'un template dans une zone outlet nommée, en passant éventuellement des paramètres (model, controller...) | ||
| + | |||
| + | <sxh javascript; | ||
| + | // ... | ||
| + | |||
| + | Router.map(function() { | ||
| + | this.route(' | ||
| + | }); | ||
| + | |||
| + | export default Router; | ||
| + | </ | ||
| + | |||
| + | <sxh html; | ||
| + | <!-- application.hbs --> | ||
| + | <div class=' | ||
| + | {{outlet " | ||
| + | </ | ||
| + | </ | ||
| + | |||
| + | Il est possible d' | ||
| + | |||
| + | <sxh javascript; | ||
| + | import Ember from ' | ||
| + | |||
| + | export default Ember.Route.extend({ | ||
| + | renderTemplate() { | ||
| + | this.render(' | ||
| + | into: ' | ||
| + | outlet: ' | ||
| + | }) | ||
| + | } | ||
| + | }); | ||
| + | </ | ||
| + | |||
| + | La méthode **render** peut permettre également de préciser le controller et le model à utiliser : | ||
| + | <sxh javascript; | ||
| + | import Ember from ' | ||
| + | |||
| + | export default Ember.Route.extend({ | ||
| + | renderTemplate(controller, | ||
| + | this.render(' | ||
| + | into: ' | ||
| + | outlet: ' | ||
| + | controller: ' | ||
| + | model: model // the model to set on `options.controller`. | ||
| + | }) | ||
| + | } | ||
| + | }); | ||
| + | </ | ||
| + | |||
| + | ===== renderTemplate ===== | ||
| + | |||
| + | <sxh javascript; | ||
| + | renderTemplate (controller, | ||
| + | </ | ||
| + | |||
| + | hook à utiliser pour afficher le template de la route courante. | ||
| + | |||
| + | ===== send ===== | ||
| + | |||
| + | <sxh javascript; | ||
| + | send (name, args) | ||
| + | </ | ||
| + | |||
| + | Déclenche (trigger) une action. | ||
| + | |||