richclient:emberjs:router:methods

Ceci est une ancienne révision du document !


Méthodes

render (name, options)

Affiche le contenu d'un template dans une zone outlet nommée, en passant éventuellement des paramètres (model, controller…)

app/router.js
1
2
3
4
5
6
7
// ...
 
Router.map(function() {
  this.route('photos');
});
 
export default Router;

app/templates/application.hbs
1
2
3
4
<!-- application.hbs -->
<div class='something-in-the-app-hbs'>
  {{outlet "anOutletName"}}
</div>

Il est possible d'afficher photos.hbs dans l'outlet “anOutletName” du template application.hbs en appelant la méthode render :

app/routes/post.js
1
2
3
4
5
6
7
8
9
10
import Ember from 'ember';
 
export default Ember.Route.extend({
  renderTemplate() {
    this.render('photos', {
      into: 'application',
      outlet: 'anOutletName'
    })
  }
});

La méthode render peut permettre également de préciser le controller et le model à utiliser :

app/routes/post.js
1
2
3
4
5
6
7
8
9
10
11
12
import Ember from 'ember';
 
export default Ember.Route.extend({
  renderTemplate(controller, model){
    this.render('posts', {    // the template to render, referenced by name
      into: 'application',    // the template to render into, referenced by name
      outlet: 'anOutletName', // the outlet inside `options.into` to render into.
      controller: 'someControllerName', // the controller to use for this template, referenced by name
      model: model            // the model to set on `options.controller`.
    })
  }
});

  • richclient/emberjs/router/methods.1516844057.txt.gz
  • Dernière modification : il y a 6 ans
  • (modification externe)