我如何知道聚合物飞镖何时完全初始化



以下代码在Dartium中有效,但在最近的Firefox和Edge中引发了一个异常:

initPolymer().then((Zone z) {
    (document.getElementById("fooDialog") as PolymerElement)
                .set("opened", true);
});

其中fooDialog是文档主体中的自定义聚合物元素。来自异常的消息:

Casting value of type HtmlElement to incompatible type PolymerElement

当我把它重写为:时,问题就消失了

initPolymer().then((Zone z) {
    new Future.delayed(new Duration(seconds: 5), () {
        (document.getElementById("fooDialog") as PolymerElement)
                .set("opened", true);
    });
});

所以我想我应该早点给set打电话。我怎么知道在最近的dart聚合物的rc中聚合物何时完全初始化(dart sdk 1.15.0,聚合物1.0.0-rc.16)?

我无法复制。另请参阅https://github.com/bwu-dart-playground/polymer1/blob/269a9746e6c0cd5ba6ceec81b3bb4c3126135be1/so36384493_wait_for_polymer_initialized/web/index.dart#L10-L10.脚本标记可能存在一些问题,导致出现奇怪的定时问题

最新更新