动态添加聚合物元素的就绪事件

时间:2016-03-15 21:58:03

标签: javascript polymer polymer-1.0 web-component

我怎么知道聚合物元素什么时候准备好了?给予:

动态添加,如:

var ele = document.createElement('my-custom-element');
document.body.appendChild(ele);

所以现在当我调用ele.myCustomMethod()时它会失败,因为它还没有准备好(在带有webcomponent-lite.js的FF / IE / Safari中)

我现在正在做的是在聚合物元素this.fire('ready')函数中调用ready(),并听取它ele.addEventListener('ready', ()=>{ele.myCustomMethod();})

但是这使得所有代码都很难编写。有时我会使用$(body).html('<my-custom-element />'),这会让事情变得更复杂。

我的问题是:有没有更好的方法呢?

谢谢。

1 个答案:

答案 0 :(得分:-2)

您可以先尝试在窗口上侦听WebComponentsReady事件。

来源:https://github.com/webcomponents/webcomponentsjs#webcomponentsready