2016-06-14 8 views
0

Ich habe eine Vorlage Helfer bekommt, das den Wert einer Session zurückzugibt, in diesem Fall in der Nummer 1 es zurückschicken:Mit Spacebar Logik in Meteor nicht Logik gehorcht

Template.Student.helpers({ 
    curWeek: function() { 
    return Session.get('CurrentWeek').substr(0, 1); 
}, 

Meine Vorlage einen Tisch und ich Ich versuche, einen Teil davon abhängig vom Wert der Hilfsfunktion auf die Tabelle zu drucken. Also habe ich eine Logik in der Vorlage, um den richtigen Teil zu drucken. Aber es gehorcht nicht der Logik. Auch wenn der Wert von curWeek den Wert 1 zurückgibt, führt die Vorlage die Logik auch unter {{#f CurWeek 2}} aus, sodass beide in der Tabelle enthalten sind. Ich möchte nur, dass der Teil unter {{# curWeek 1}} ausgeführt wird, da dies der Wert ist. Benütze ich die Logik nicht korrekt?

<template name="Student"> 
    {{#modalizeBody}} 
    <table class="bordered narrow"> 
    <thead> 
     <tr> 
     <th>Name</th> 
     <th>Shift</th> 
     <th>Age</th> 
     <th>Sex</th> 
     <th>Level</th> 
     <th>Sun</th> 
     <th>Mon</th> 
     <th>Tue</th> 
     <th>Wed</th> 
     <th>Thu</th> 
     <th>Fri</th> 
     <th>Sat</th> 
     </tr> 
    </thead> 
    <tbody> 
    {{#each StudsWk1Master}} 
    {{#if curWeek 1}} 
     <tr> 
     <td>{{FullName}}</td> 
     <td>{{RoomWk1}}</td> 
     <td>{{calculateAge Bdate}}</td> 
     <td>{{Sex}}</td> 
     <td>{{Level}}</td> 
     <td>{{formatName this.Teachers.Week1.Sunday}}</td> 
     <td>{{formatName this.Teachers.Week1.Monday}}</td> 
     <td>{{formatName this.Teachers.Week1.Tuesday}}</td> 
     <td>{{formatName this.Teachers.Week1.Wednesday}}</td> 
     <td>{{formatName this.Teachers.Week1.Thursday}}</td> 
     <td>{{formatName this.Teachers.Week1.Friday}}</td> 
     <td>{{formatName this.Teachers.Week1.Saturday}}</td> 
     </tr> 
    {{/if}} 
    {{/each}} 
    {{#each StudsWk1Master}} 
    {{#if curWeek 2}} 
     <tr> 
     <td>{{FullName}}</td> 
     <td>{{RoomWk2}}</td> 
     <td>{{calculateAge Bdate}}</td> 
     <td>{{Sex}}</td> 
     <td>{{Level}}</td> 
     <td>{{formatName this.Teachers.Week2.Sunday}}</td> 
     <td>{{formatName this.Teachers.Week2.Monday}}</td> 
     <td>{{formatName this.Teachers.Week2.Tuesday}}</td> 
     <td>{{formatName this.Teachers.Week2.Wednesday}}</td> 
     <td>{{formatName this.Teachers.Week2.Thursday}}</td> 
     <td>{{formatName this.Teachers.Week2.Friday}}</td> 
     <td>{{formatName this.Teachers.Week2.Saturday}}</td> 
     </tr> 
    {{/if}} 
    {{/each}} 
    </tbody> 
</table> 
{{/modalizeBody}} 
</template> 

Antwort

1

Ihr Helfer testet nicht auf Gleichheit. Sie haben:

{{#if curWeek 1}} 

Aber Ihr Helfer gibt nur die aktuelle Woche zurück und erwartet keinen Parameter.

Fügen Sie einfach den Parameter auf Ihre Hilfsfunktion und dann einen boolean zurück:

Template.Student.helpers({ 
    curWeek: function (value) { 
    return Session.get('CurrentWeek').substr(0, 1) === value; 
}, 
+0

Ah, ja. Mr. Floyd wieder zu meiner Rettung! Danke mein Herr. –