0
我想切换核心折叠面板内部重复模板元素。我已经提供了动态ID为核心坍缩元素,但自来水它说:遗漏的类型错误:布尔不是一个函数无法调用模板重复内核折叠切换聚合物
我的代码是:
<template>
<template repeat="{{ data }}">
<style>
......
</style>
<paper-shadow z="1" class="card">
<span class="info-bar">{{ cardID }}</span>
<div vertical layout>
<div>
<div horizontal layout>
<div flex style="color:#757575;">
<span>Date : </span><br /><span>March 15, 2015</span>
</div>
<div style="text-align:right;">
<paper-icon-button flex icon="subject" style="color:#ed485c;" on-tap="{{ toggle }}" id="{{ cardID }}"></paper-icon-button>
<paper-icon-button flex icon="social:share" title="clear" style="color:#ed485c;"></paper-icon-button>
</div>
</div>
</div>
<core-collapse id="{{ cardID }}">
<span> Collapse Content </span>
</core-collapse>
</div>
</paper-shadow>
</template>
</template>
我的脚本是:
<script>
Polymer('i-card', {
toggle: function (e, detail, sender) {
var iid = e.target.templateInstance.model.cardID;
this.shadowRoot.querySelector('#' + iid).toggle();
},
ready: function() {
this.data = this.getData();
},
getData: function() {
var data = [];
for (var i = 0; i < 100; i++) {
data.push({
cardID : 'icard-' + Math.floor(Math.random()*(1000-1+1)+1),
});
}
return data;
}
});
</script>
我需要在水龙头上切换其各自的折叠元素。
感谢您的答复。我根据答案更改了代码,但现在我遇到了不同的问题。 '未捕获TypeError:无法读取属性'切换'null' – 2015-04-04 15:19:54
我解决了这个问题。只是在你的代码中做了一些改动。代替通过sender.ident获取iid,我调用了'var iid = e.target.templateInstance.model.cardID;'。这项工作对我来说很完美。感谢:) – 2015-04-04 15:26:18
很高兴你得到它的工作。 sender.ident已经为我工作了。你在铬合金工作吗?你也可以使用sender.attributes.ident.value; – 2015-04-04 15:28:57