在dom repeat聚合物元素中有一系列纸质按钮。
<template is="dom-repeat" items="{{myitems}}">
<p>name: <span>{{item.name}}</span>
<paper-button on-click="makeSomething">makeSomething</paper-button>
</p>
</template>
在脚本部分,我实现了触发事件的makessomething函数。我如何区分点击第一个项目和点击第二个项目?
我尝试在纸张按钮上设置自定义属性,例如
<paper-button on-click="makeSomething" name="{{item.name}}">makeSomething</paper-button>
,但目标上的getAttribute似乎不工作与属性名称…你能帮我吗?
你需要阅读文档中的"在dom-repeat模板中处理事件"一节。下面是他们给出的例子:
<dom-module id="simple-menu">
<template>
<template is="dom-repeat" id="menu" items="{{menuItems}}">
<div>
<span>{{item.name}}</span>
<span>{{item.ordered}}</span>
<button on-click="order">Order</button>
</div>
</template>
</template>
<script>
Polymer({
is: 'simple-menu',
ready: function() {
this.menuItems = [
{ name: "Pizza", ordered: 0 },
{ name: "Pasta", ordered: 0 },
{ name: "Toast", ordered: 0 }
];
},
order: function(e) {
var model = e.model;
model.set('item.ordered', model.item.ordered+1);
}
});
</script>
</dom-module>