无法访问嵌套模板/重复模板中的元素?

时间:2014-09-17 19:44:02

标签: javascript polymer

我已经搜索了这个,所有的答案一直在使用我没有经验的Dart。

有没有办法用常规的ol' JS?

this.$.classname仅返回null

编辑:这是我尝试做的一个例子

<template repeat="{{item, i in items}}">
    <div id="accordheader" on-click="{{toggle}}">{{item}}</div>
    <core-collapse id="collapse">
        <p>asdf</p>
    </core-collapse>
</template>

和脚本:

toggle: function () {
    this.$.collapse.toggle();
    console.log('toggled');
}

我试图制作一个基于核心崩溃的手风琴,而this.$.collapse.toggle(); console.log在{{1}中的时工作} template作为属性,当它位于repeattemplate作为属性时,它不起作用。我尝试了repeatthis.$.collapse.toggle();,但都没有在重复的模板中找到它。

1 个答案:

答案 0 :(得分:4)

$不允许访问template if=template repeat=中的元素。请改用shadowRoot.querySelector('someselector')。 (不确定JavaScript中的语法是如何完全的,我只在Dart中使用它。)