すべてのWebコンポーネントは、すべての依存関係を含めて自己完結型でなければならないため、複製された依存関係インポートは、スクリプトインクルードですぐに問題になります。したがって、Webコンポーネント(さらに、Polymer)はW3C HTMLインポートを使用してコンポーネントの依存関係を管理します。これらのインポートされたHTMLファイルは、ブラウザによってキャッシュされ、一度だけロードされます。
ほとんどの外部ライブラリは、まだHTMLインポートの準備ができていません。幸いにも必要なHTMLラッパーを作成するのはすばやく簡単です。
パラメータ | 説明 |
---|---|
this.resolveUrl( '../ libraries / turf.js') | ライブラリの場所を解決する |
function(){this.doSomething(引数、anotherArgument);}。バインド(this)); | 折り返し電話。この例では、クロージャを使用してthis.doSomething() |
この例では、コンポーネントで使用されているライブラリがパッケージマネージャにインストールされています。これにより、ライブラリ依存のコンポーネントを簡単に配布できます。使用したいライブラリがパッケージマネージャー経由で配布されていない場合でも、同じ方法で読み込むことができますが、コンポーネントは他の人が使用するためにより多くの努力を必要とします。
レイジーローディングの例では、ライブラリパスに単純な文字列を使用しています。マジック文字列定数を避けたい場合は、JSONファイルのアイアン・アヤックスを使ってオブジェクトにパスをロードし、必要に応じてコンポーネント間をパスすることができます。