我如何知道 polymer 元件何时准备就绪?给出:

它是动态添加的,如:

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

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

我现在正在做的是在 polymer 元素 this.fire('ready') 函数中调用 ready(),然后听 ele.addEventListener('ready', ()=>{ele.myCustomMethod();})
但这使得所有代码都很难编写。有时我使用 $(body).html('<my-custom-element />') ,它使事情变得更加复杂。

我的问题是: 有没有更好的方法来做到这一点?

谢谢你。

最佳答案

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

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

关于javascript - 动态添加 polymer 元素的就绪事件,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/36023012/

10-13 00:16