回答
迭代中爲for loop
打印數字悅目不會讓你把任何邏輯在它的設計。你應該做的是,你應該定製你的基礎模型,以便你可以檢索一個準備好的不相關的列表(從Sightly的角度來看),其中包含需要顯示的數據。之後,只需使用data-sly-list
。你需要谷歌的更多的細節,但在一般情況下,這是你如何在悅目使用列表:
<ul data-sly-list.myitem="${mymodel.myitems}" data-sly-unwrap>
<li>${myitem.foo}</li>
</ul>
編輯:正如@nateyolles指出的那樣,你可以通過使用迭代項目的具體範圍在測試條件下的索引(<li data-sly-test="${itemList.count >= 2 && itemList.count <= 6}">${item}</li>
),儘管我不確定這是否是「視覺方式」。就個人而言,我建議不要這樣做,除非這會讓你的生活更加容易。
請有此AEM論壇中樂poat: - http://help-forums.adobe.com/content/adobeforums/en/experience-manager-forum/adobe-experience-manager.topic.html/forum__wtot-hi_i_need_toite.html
環固定數量的項目
<ul data-sly-list="${ [1,2,3,4] }">
<li>${item}</li>
</ul>
也請看看文檔: -
鏈接: - https://docs.adobe.com/docs/en/aem/6-1/develop/sightly/block-statements.html
//
LIST
數據狡猾列表:重複host元素的用於所提供的對象中的每個可枚舉屬性的內容。
下面是一個簡單的循環:
<dl data-sly-list="${currentPage.listChildren}">
<dt>index: ${itemList.index}</dt>
<dd>value: ${item.title}</dd>
</dl>
代碼示例僅旨在用於說明的目的。
下默認的變量列表的範圍內,可供選擇:
項目:在迭代當前項。
itemList中:對象保持下列性質:
指數:基於零的計數器(0..length-1)。
count:one-based counter(1..length)。
first:如果當前項目是第一個項目,則爲true。
middle:如果當前項目既不是第一個也不是最後一個項目,則返回true。
last:如果當前項目是最後一個項目,則返回true。
奇數:如果索引是奇數,則返回true。
even:如果索引是偶數,則爲true。
//
<ul data-sly-list.child="${currentPage.listChildren}">
<li class="${ childList.odd ? 'odd' : 'even'}">${child.title}</li>
</ul>
//
<div data-sly-list.children="${resource.listChildren}">
<div data-sly-list.fields="${children.listChildren}">
<div data-sly-test=${fieldsList.last}> DO SOMETHING BEFORE LAST NODE</div>
<div data-sly-resource="${fields.path}"></div>
</div>
</div>
所以要根據您的使用情況,您可以使用:
<ul data-sly-list.child="${currentPage.listChildren}">
<li data-sly-test="${childList.index <= 5}">${child.title}</li>
</ul>
我希望這會爲你工作。
感謝和問候
Kautuk薩尼
- 1. 迭代for循環
- 2. for循環遞歸迭代
- 3. For循環不迭代
- 4. Java for循環迭代
- 5. C#:For循環不迭代
- 6. for循環後1迭代
- 7. Python For ...循環迭代
- 8. for循環或迭代器?
- 9. for循環不迭代
- 10. for循環性能迭代
- 11. 的Python for循環迭代
- 12. 用盡迭代器,但在For循環
- 13. 在sass中迭代製作@for循環
- 14. 在Android 2.3.3中迭代for循環
- 15. 爪哇迭代在for循環的NullPointerException
- 16. 在FOR循環中迭代FOREACH數組
- 17. 在for循環中填充迭代器
- 18. 迭代蟒字典使用For循環,並在單次迭代
- 19. 在for循環之前定義循環迭代器?
- 20. $ i--;迭代器被夾在無限循環 - for循環PHP
- 21. For循環for循環不適用於循環的正確迭代?
- 22. 性能區別for循環和for ..在循環時在JavaScript中迭代數組?
- 23. for循環中的隨機迭代
- 24. C++迭代器for循環陷阱?
- 25. For循環得到迭代值蟒蛇
- 26. Python3.4 for循環迭代問題
- 27. 搬回一個迭代的for循環
- 28. for-each循環迭代是向後
- 29. 重用的for循環迭代變量
- 30. for循環shell腳本不迭代
「爲了澄清:你不能得到myitems列表,並通過6遍歷項目2 ...要做到這一點,你需要創建模型中的吸氣劑是隻返回這些項目,並使用此getter。「這不是一個很好的例子,因爲您可以遍歷'myitems'並使用'data-sly-test'僅顯示第2項到第6項。 '
這不就是測試這個列表是否在2到6個元素之間嗎? – CptBartender
否。'ul'上的'data-sly-list'將遍歷整個列表,'data-sly-test'會確定是否在每次迭代時在最終的HTML輸出中包含或排除'li'元素,這個例子將打印列表中的項目2到6(我使用'count',它是基於一個的;我可以使用'index '這是從零開始的。) – nateyolles