聚合多个相似的元素和点击事件

时间:2015-01-30 17:19:34

标签: polymer web-component

我正在尝试构建一个具有这样的div的自定义聚合物元素

<core-menu>
    <paper-item on-tap={{openPage}}><core-icon icon="add"></core-icon> Add Issues</paper-item>
    <paper-item on-tap={{openPage}}><core-icon icon="view-list"></core-icon> View Issues</paper-item>
    <paper-item on-tap={{openPage}}><core-icon icon="lock"></core-icon>Logout</paper-item>
</core-menu>

openPage函数需要提供此类操作

 openPage: function(event, details, sender) {
        console.log("open page called item "+ item);
 }

我不确定如何点击该项目。比方说,如果我点击Logout项目,我希望item的值是一个数字,就像可以说第n个paper-item被点击的东西一样。

我不知道如何从eventdetailssender获取此值。

提前致谢

1 个答案:

答案 0 :(得分:3)

您可以这样做:

<core-menu>
   <paper-item data-action-id="1" on-tap={{openPage}}><core-icon icon="add"></core-icon> Add Issues</paper-item>
   <paper-item data-action-id="2" on-tap={{openPage}}><core-icon icon="view-list"></core-icon> View Issues</paper-item>
   <paper-item data-action-id="3" on-tap={{openPage}}><core-icon icon="lock"></core-icon>Logout</paper-item>
</core-menu>

然后:

openPage: function(event, details, sender) {
    console.log("open page called item "+ sender.target.attributes["data-action-id"]);
}

&#34; sender.target&#34;正在退回纸品