Ceci est une ancienne révision du document !
Templates
Ember utilise handlebars pour la partie templates.
Hamdlebars utilise comme beaucoup d'autres moteurs de templates les doubles accolades {{}} pour faire appel aux expressions.
Affichage de variables
Hello, <strong>{{firstName}} {{lastName}}</strong>!
Cette utilisation suppose que les propriétés firstName et lastName aient été définies dans le contrôleur associé :
import Controller from '@ember/controller'; export default Controller.extend({ firstName: 'Trek', lastName: 'Glowacki' });
Block expressions
Les blocks expressions commencent par {# et se terminent par /}
Itération sur une liste d'éléments {#each}
<ul> {{#each people as |person|}} <li>Hello, {{person.name}}!</li> {{/each}} </ul>
Itération avec utilisation de l'index
<ul> {{#each people as |person index|}} <li>Hello, {{person.name}}! You're number {{index}} in line</li> {{/each}} </ul>
Itération avec une éventuelle liste vide
{{#each people as |person|}} Hello, {{person.name}}! {{else}} Sorry, nobody is here. {{/each}}
Conditions {#if}
Condition sur une seule ligne
<div> {{if isFast "zoooom" "putt-putt-putt"}} </div>
Condition multi-lignes
{{#if person}} Welcome back, <b>{{person.firstName}} {{person.lastName}}</b>! {{/if}}
else
{{#if person}} Welcome back, <b>{{person.firstName}} {{person.lastName}}</b>! {{else}} Please log in. {{/if}}
elseif
{{#if isAtWork}} Ship that code! {{else if isReading}} You can finish War and Peace eventually... {{/if}}
unless
unless est la négation du if (if not)
{{#unless hasPaid}} You owe: ${{total}} {{/unless}}