Einfacher Weg ein Grid mit Handlebars.js zu erstellen?

8

Ich versuche, ein Gitter von Divs zu erzeugen, das fünf Elemente weit von den Objekten in diesem Array entfernt ist:

%Vor%

Das Array kann zwischen 1 und 50 Objekte enthalten, und das Datenformat ist ein 1d-Array, das aus einem Spine.js-Modell stammt. Um Daten und Präsentation zu trennen, hoffe ich, die Daten in einem 1D-Array zu halten und den View-Code (Lenkerschablone) zu verwenden, um eine neue Zeile für jedes fünfte Element zu erstellen, wie folgt:

%Vor%

Ich habe eine Lösung, indem ich die ganze Zeichenfolge in einer Hilfsfunktion zurückgebe. Nur meine Vorlage sieht so aus:

%Vor%

Das scheint so zu sein, als würde es die Verwendung von Vorlagen vereiteln. Gibt es eine einfache Möglichkeit, ein Raster wie oben zu erstellen, in dem sich der Code hauptsächlich in der Vorlage befindet?

[Bearbeiten] Lösung

Ändern Sie die Daten im Controller, basierend auf @ Simes Antwort unten.

Vorlagencode:

%Vor%

Controller-Rendering-Code ():

%Vor%     
Adam 14.02.2012, 01:20
quelle

2 Antworten

7

Also wäre die Vorlage:

%Vor%

Diese Vorlage erwartet jedoch ein zweidimensionales Array, daher müssten Sie zuerst Ihr Datenobjekt transformieren.

%Vor%

Live-Demo: Ссылка

    
Šime Vidas 14.02.2012, 01:44
quelle
0

Verwenden Sie das Beispiel für Tabellen-Tags:

%Vor%

und Sie könnten auch IDs und Klassen als Attribute für einfache Bearbeitungsstrategien angeben.

    
Christopher Pelayo 14.02.2012 01:32
quelle