2016-03-15 18 views
5

ポリマー要素の準備ができたら、どうすればわかりますか?その寄付:ダイナミックポリマー要素の準備完了イベント

は、それが動的として、追加されます。私はそれはまだ準備ができていないので、それは失敗しますele.myCustomMethod()を呼び出すときだから今

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

(FF/IE/Safariでwebcomponent-lite.js付き)私が今やっている何を

は、ポリマー要素ready()関数内の呼び出しthis.fire('ready')であり、それにele.addEventListener('ready',()=>{ele.myCustomMethod();})

を聞くしかし、これは書くことは、すべてのコードが非常に困難にします。そして時々私は$(body).html('<my-custom-element />')を使います。それは物事をもっと複雑にします。

私の質問は:これを行うには良い方法はありますか?

ありがとうございます。

+0

、それができませんの? – Kable

+0

@Kable:未定義のため失敗しました。私は、Googleのポリマー(またはwebcomponent polyfill)がまだ初期化を完了していないと考えているため、未定義です。 – garyx

+0

あなたは答えを見つけましたか?あなたの解決策は私が思い付いたものと同じであり、私はそれについてもあまり気にしません。 – three

答えて

-2

ウィンドウのWebComponentsReadyイベントを最初に聞くことができます。

出典:あなたは `ele.myCustomMethod()`失敗すると言うとき、それは未定義であるか、その関数内の問題であるため、https://github.com/webcomponents/webcomponentsjs#webcomponentsready

+1

ありがとうございました。私はその要素をオンザフライで追加します。私はそれが再び 'WebComponentsReady'イベントを再起動するとは思わない – garyx

関連する問題