0
在app.js中,我將兩個相同大小的數組傳回客戶端。是否可以在handlebars文件的#each循環中訪問多個數組?
是否有可能做到這樣的事情?
{{#each arrayOne}}
<Li>this </Li>
<Li> {{@index : arrayTwo}} </Li>
{{/each}}
在app.js中,我將兩個相同大小的數組傳回客戶端。是否可以在handlebars文件的#each循環中訪問多個數組?
是否有可能做到這樣的事情?
{{#each arrayOne}}
<Li>this </Li>
<Li> {{@index : arrayTwo}} </Li>
{{/each}}
您應該避免在視圖模板中使用複雜的邏輯。相反,我建議讓一個控制器爲你做合併工作。
通過這種方式,您可以解開視圖,因爲它更詳細地描述了要顯示的內容,並且控制器清楚地表明瞭以組合方式呈現不同數據的意圖。
e.g
model.arr = arrayOne.map(function (item, i) {
return {
i1: arrayOne[i],
i2: arrayTwo[i]
};
});
那麼你的看法變得更加簡單
{{#each arr}}
<Li>{{arr.i1.thing}}</Li>
<Li>{{arr.i2.thingie}}</Li>
{{/each}}
很顯然,你應該只在您的map
回調返回的相關性提高這進一步。
我看着地圖,它看起來完全像我需要的。謝謝你的幫助。 – Jrom
由於Handlebars不應該是腳本語言,您可能必須準備好數據結構以更貼近地使用您的用例。 – tadman