2012-04-13 36 views
6

Tôi đang viết một mảng đối tượng JS trong mẫu Freemarker. Nhưng tôi có vấn đề nghiêm trọng không bao gồm dấu phẩy sau mục cuối cùng.Freemarker, danh sách chỉ mục và điều kiện đếm

<#assign pages = module.pages.page> 
wh.pages = [ 
<#list pages as page> 
{"name" : "${[email protected]}", "href" : "${[email protected]}"} 
<#if (index+1) < pages?size>,</#if> 
</#list> 
] 

Vì vậy, trong khi danh sách lặp lại, trong khi chỉ số + 1 nhỏ hơn độ dài/kích thước của biến trang, nên viết dấu phẩy. Vì vậy, khi nó bằng kích thước, nó sẽ bỏ qua dấu phẩy.

Vậy làm cách nào để đạt được điều này?

+1

http://freemarker.sourceforge.net/docs/ ref_directive_list.html Không phải cách tôi làm, ví dụ của họ có vẻ sạch hơn. –

+0

Có điều đó ... đã không biết về hàm "_has_next". Đã cố gắng để làm điều đó trường học cũ. Xấu hổ bạn đã không đặt câu trả lời như vậy, sẽ chấp nhận nó. –

Trả lời

8

Chỉ mục phải được đặt trước bằng tên mục của bạn. Trong ví dụ:

<#if (index+1) < pages?size>,</#if> 

cần phải có được:

<#if (page_index+1) < pages?size>,</#if> 
12

Hãy thử với item_has_next

trong ví dụ của bạn:

<#if pages_has_next>,</#if> 
Các vấn đề liên quan