访问父项 dom-单击子项时的重复项 dom-重复项
Access parent dom-repeat item on clicking child dom-repeat item
我正在使用 polymer.I 有它看起来的对象数组
[{
name:xxx,
address:yyy,
times:[
{start:12,
End:5
},
{start:2,
End:4
}
]
},
{//same format repeats
}
]
我使用嵌套 dom-重复,
<template is="dom-repeat" items="{{pList}}" as="list">
<paper-item>
<paper-item-body two-line>
<div>[[list.address]]</div>
<div secondary>[[list.name]]</div>
</paper-item-body>
<template is="dom-repeat" items={{list.times}} as="time">
<paper-item-body on-tap="_handleTime" two-line>
<div>[[time.start]]</div>
<div>[[time.end)]]</div>
</paper-item-body>
</template>
</paper-item>
</template>
我在第二个 dom-repeat 中有 on tap 函数,所以 on taping 下面的函数被调用,在这里我可以访问时间对象。
如何访问第一个 dom 中的名称和地址 - 重复使用 'e' 参考,如下所示?
我尝试了 parentElement 但它不起作用!
_handleTime:function(e) {
console.log(e.model.time); //displays time obj i.e {start:12,End:5} but I'm trying to get {name,address,{start,end}}
console.log(e.parentElement);//gives error
//I'm trying to get entire object like {name:xxx,address:yyy,times:[]}
}
var item = this.$.firstRepeat.itemForElement(e.target);
其中 firstRepeat 是第一个 dom-repeat
,
检查这个example
我正在使用 polymer.I 有它看起来的对象数组
[{
name:xxx,
address:yyy,
times:[
{start:12,
End:5
},
{start:2,
End:4
}
]
},
{//same format repeats
}
]
我使用嵌套 dom-重复,
<template is="dom-repeat" items="{{pList}}" as="list">
<paper-item>
<paper-item-body two-line>
<div>[[list.address]]</div>
<div secondary>[[list.name]]</div>
</paper-item-body>
<template is="dom-repeat" items={{list.times}} as="time">
<paper-item-body on-tap="_handleTime" two-line>
<div>[[time.start]]</div>
<div>[[time.end)]]</div>
</paper-item-body>
</template>
</paper-item>
</template>
我在第二个 dom-repeat 中有 on tap 函数,所以 on taping 下面的函数被调用,在这里我可以访问时间对象。 如何访问第一个 dom 中的名称和地址 - 重复使用 'e' 参考,如下所示? 我尝试了 parentElement 但它不起作用!
_handleTime:function(e) {
console.log(e.model.time); //displays time obj i.e {start:12,End:5} but I'm trying to get {name,address,{start,end}}
console.log(e.parentElement);//gives error
//I'm trying to get entire object like {name:xxx,address:yyy,times:[]}
}
var item = this.$.firstRepeat.itemForElement(e.target);
其中 firstRepeat 是第一个 dom-repeat
,
检查这个example