我正在使用Polymer的ul
显示两个数组 - 一个接一个作为无序列表(dom-repeat
):
<ul>
<template is="dom-repeat" items="{{array1}}" index-as="position_id">
<li on-tap="select1" class$="{{_selectedStyle(selectedId, position_id)}}">
{{item.fileName}}
</li>
</template>
<template is="dom-repeat" items="{{array2}}" index-as="position_id">
<li on-tap="select2" class$="{{_selectedStyle(selectedId, position_id}}">
{{item.fileName}}
</li>
</template>
</ul>
...
_selectedStyle: function (selectedPosId, posId) {
if (selectedPosId && posId){
return (selectedPosId === posId) ? "selected" : "";
}
}
我想在所选项目上应用类,但显然它无法正常工作,因为dom-repeat模板selectedId
和position_id
都是相同的(都从0开始)。理想情况下,在第二个dom-repeat模板上有偏移量,但似乎不支持此功能。在这种情况下,最好的解决方法是什么?
答案 0 :(得分:2)
也可以传递偏移量(array1
的长度)并将其添加到_selectedStyle()
中(请参阅下面的评论):
<li on-tap="select2" class$="{{_selectedStyle(selectedId, position_id, array1.length}}">
{{item.fileName}}
</li>