如何在Polymer 3.0中访问dom repeat中的元素?

如何在Polymer 3.0中访问dom repeat中的元素?,polymer,polymer-3.x,dom-repeat,Polymer,Polymer 3.x,Dom Repeat,我有以下代码: <dom-repeat id="template" items="{{chats}}"> <template> <template is="dom-if" if="[[item.opened]]"> <section id$="msg-[[index]]"></section> </template> </template> </dom

我有以下代码:

<dom-repeat id="template" items="{{chats}}">
    <template>
      <template is="dom-if" if="[[item.opened]]">
        <section id$="msg-[[index]]"></section>
      </template>
    </template>
</dom-repeat>

如何访问id=msg-3的节,并在呈现时将scrollTop设置为999


我知道在polymer 1中,最佳做法是绑定到on attached并使用debouncer等待dom repeat事件。然而,这在polymer 3中不再有效。

如果您知道可以使用的索引号

let el = this.shadowRoot.querySelector('#msg-'+<index>);

这只是解决方案的一部分,另一个是在dom重复完成渲染时成功绑定,只有使用去Bouncer才能进行绑定。@Max0999,如果可以访问dom元素,这是非常容易的。如果你需要,我可以在同一个例子上加上你,说起来很容易,实际上做起来可能会证明opposite@Max0999,实际上,我不确定您希望使用
将scrollTop设置为999
的具体内容,但我猜,您希望滚动到位于顶部的元素。检查链接你是否想要这个?
let screenPosition = el.getBoundingClientRect();
window.scrollTo(screenPosition);