2016-10-03 36 views
0

我希望僅在存在項目的情況下打印列表。如果它們存在,我可以執行以下列表項目列表。僅當在小鬍子中存在Map中的值時纔打印列表Java

<ul> 
{{#myList}} 
<li>{{value}}</li> 
{{/myList}} 
</ul> 

然而,如果該列表是空的,我不希望打印出來的標籤<ul></ul>要麼。我可以通過在我的上下文context.isEmpty = myList.isEmpty();中添加另一個屬性來實現此目的,但我想避免這種情況 - 該列表本身已經有一個isEmpty(),有沒有我可以參考的一些方法?

這可能是鬍鬚Java嗎?

回答

0

如果你在<ul></ul>之前做了myList.size

{{#myList.size}} 
    <ul> 
     {{#myList}} 
      <li>{{value}}</li> 
     {{/myList}} 
     </ul> 
{{/myList.size}} 
+0

這並沒有爲我工作。 (都沒有使用isEmpty) – Cheetah

+0

您是否嘗試過使用'empty'代替'isEmpty'? – pleft

+0

是的,我嘗試了兩個,它沒有工作。看我的答案,我必須做的。 – Cheetah

1

我只好跟着這到底是怎麼描述:https://groups.google.com/forum/#!topic/mustachejava/UmVGdNtjlpM

DefaultMustacheFactory factory = new DefaultMustacheFactory(); 
factory.setObjectHandler(new ReflectionObjectHandler() { 
    @Override 
    protected boolean areMethodsAccessible(Map<?, ?> map) { 
    return true; 
    } 
}); 

{{#job.userMetadata.entrySet}} 
    <tr> 
    <td>{{key}}</td> 
    <td>{{value}}</td> 
    </tr> 
{{/job.userMetadata.entrySet}}