聚合物模板重复组

时间:2014-10-23 20:32:57

标签: templates polymer repeat web-component

有没有办法在聚合物重复模板中进行分组?我有一个带有doc.name和doc.manualType的项目列表,但是我想对项目列表进行分组,因此manualType只显示每个组一次而不是每个项目。

或者如何更新我的绑定以使用previousManualType,这样我只能显示manualType,如果它与上一个manualType不同。

<template id="docListTemplate" bind="{{searchResults}}">
   <div class="vGroup">
      <core-selector id="selector" class="list" multi selected="{{multiSelected}}">
         <template repeat="{{doc, i in data}}" {previousManualType:''}>
            <template if="{{doc.manualType!=previousManualType}}">
               <h1>{{doc.manualType}}</h1>
            </template>
            <div class="cb item">
                {{doc.name}}
            </div>
         </template>
      </core-selector>
   </div>
</template>

2 个答案:

答案 0 :(得分:0)

怎么样?
<template id="docListTemplate" bind="{{searchResults}}">
   <div class="vGroup">
      <core-selector id="selector" class="list" multi selected="{{multiSelected}}">
         <template repeat="{{manualType in ManualTypes}}">
            <template repeat="{{doc, i in manualType.data}}">
              <h1>{{doc.manualType}}</h1>

              <div class="cb item">
                {{doc.name}}
            </div>
         </template>
      </core-selector>
   </div>
</template>

您需要相应地准备数据结构。

答案 1 :(得分:0)

正如冈特指出的那样,数据结构似乎是关键点。 如果您无法控制输入,则需要对其进行转换。 您可以使用下划线/ lodash到groupBy

http://underscorejs.org/#groupBy

https://lodash.com/docs#groupBy