richclient:emberjs:templates

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.

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'
});

Les blocks expressions commencent par {# et se terminent par /}

<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}}

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}}

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