2015-02-23 2 views
8

Ich möchte einen if Zustand in einer Meteor Blaze Vorlage verwenden. Angenommen, Sie haben einen Helfer users auf der Users-Sammlung haben Sie durch Aufgaben zu durchlaufen möchten, und wenn der Benutzername admin, verwenden Sie einen „red“ style:Wie kann ich die Bedingung auf der Meteorschablone verwenden?

<ul> 
    {{#each users}} 
     <li {{#if(name==admin)}}class="red"{{/if}}>{{name}}</li> 
    {{/each}} 
</ul> 

Antwort

15

Meteor verwendet Spacebars, eine Variante von Handlebars, die "sind Logiklose "Vorlagen. Sie müssen Template helper definieren und dann im {{#if}} verwenden.

Template.foo.helpers({ 
    isAdmin: function (name) { 
    return name === "admin" 
    } 
}); 
<ul> 
    {{#each users}} 
    <li {{#if isAdmin name}}class="red"{{/if}}>{{name}}</li> 
    {{/each}} 
</ul> 
+0

danke !. Aber ist es möglich, Bedingung oder Ausdruck auf der Vorlage zu verwenden? – Phirum

+0

@Phirum, nicht alle Berechnungen in Spacebars müssen durch Helfer (oder den Datenkontext) erfolgen. –

+0

@ PeppeL-G warum muss alles durch einen Helfer erledigt werden, sollten nicht Leerzeichen die '===' '! ==' Anweisungen enthalten? –

Verwandte Themen