Javascript 聚合物2.0-“;this.shadowRoot.querySelector“;总是返回空值

Javascript 聚合物2.0-“;this.shadowRoot.querySelector“;总是返回空值,javascript,polymer,web-component,polymer-2.x,Javascript,Polymer,Web Component,Polymer 2.x,我想创建新元素并将其附加到#container部分的connectedCallback中。我使用this.shadowRoot.querySelector(“容器”)来选择元素,但它总是返回null。如何选择阴影根中的元素 我是一个DOM元素。这是我的影子 类domeElement扩展了Polymer.Element{ connectedCallback(){ 这是阿塔奇沙多({ 模式:“打开” }) log(this.shadowRoot.querySelector(“容器”)) } 静态

我想创建新元素并将其附加到
#container
部分的
connectedCallback
中。我使用
this.shadowRoot.querySelector(“容器”)
来选择元素,但它总是返回
null
。如何选择阴影根中的元素


我是一个DOM元素。这是我的影子

类domeElement扩展了Polymer.Element{ connectedCallback(){ 这是阿塔奇沙多({ 模式:“打开” }) log(this.shadowRoot.querySelector(“容器”)) } 静态get是(){ 返回“dom元素”; } } customElements.define(domeElement.is,domeElement);
Polymer.Element已经附加了一个影子根,因此您无需在
connectedCallback()
中自己附加影子根。更重要的是,您的自定义
connectedCallback()
必须调用
super.connectedCallback()
才能正确操作。它应该是这样的:

connectedCallback() {
  super.connectedCallback(); // DO THIS
  // this.attachShadow(...)  // DON'T DO THIS

  console.log('container', this.shadowRoot.querySelector("#container"));
}

Polymer.Element已经附加了一个影子根,所以您不需要在
connectedCallback()
中自己附加影子根。更重要的是,您的自定义
connectedCallback()
必须调用
super.connectedCallback()
才能正确操作。它应该是这样的:

connectedCallback() {
  super.connectedCallback(); // DO THIS
  // this.attachShadow(...)  // DON'T DO THIS

  console.log('container', this.shadowRoot.querySelector("#container"));
}

谢谢@tony19 it工作,Polymer official quick tour没有提到或我错过了,非常感谢。@G.CSun没问题:)谢谢@tony19 it工作,Polymer official quick tour没有提到或我错过了,非常感谢。@G.CSun没问题:)