动态地将1个PolymerElement添加到childNodes中的另一个,但不可查询?

时间:2016-06-30 16:25:51

标签: dart polymer polymer-1.0 dart-polymer

我创建了两个扩展 PolymerElement的类,我们可以调用它们:ElementA和ElementB。

所以,我想动态地将ElementB添加到ElementA,所以我想将它添加到ElementA的onReady调用中,如下所示:

class ElemenetA extends PolymerElement{
  ElementB get _myElement => $["bid"];
  onReady(){
    ElementB item = new ElementB(); //item has an id of "bid"
    Polymer.dom(this).childNodes.add(item);
  }
}

因此,当我访问Component时,每次都会向childNodes添加一个新的ElementB。没关系,我稍后会解决这个问题。

我遇到的问题是ElementB根本没有渲染,如果我尝试从它调用一个方法,如 open ,就像这样:_myElement.open();它会说{{} 1}}。

将PolymerElement注入另一个是什么错误?

我的总体目标是在一堆其他组件中拉出一个共同元素,并使用一种行为将这个重复项目注入到dom中。

1 个答案:

答案 0 :(得分:1)

您无法访问使用$[...]动态添加的元素,这仅适用于静态添加到元素HTML的元素。即使他们在<template is="dom-if"><template is="dom-repeat"> $[...]内,也可以使用。

改为使用$$('#bid')