私は、ポリマーショップアプリと同様のプロジェット設定をしています。アプリケーション自体のコードベースを減らすために、私はホールのメインページレイアウトをseparete要素プロジェクトに分割しました。このプロジェクトは、怠惰なそのDependencysの7をロードする要素Layout
がありますポーラーアプリケーションシェルと遅延ロード
_pageLoaded: function (shouldResetLayout) {
this._ensureLazyLoaded();
...
}
_ensureLazyLoaded: function() {
if (!this.loadComplete) {
Polymer.RenderStatus.afterNextRender(this, function() {
this.importHref(this.resolveUrl('lazy-resources.html'), function() {
this.loadComplete = true;
}, null, true);
});
}
},
ショップアプリのexmapleと基本的に同じロジックを。 _pageLoaded
は、私のShop-appの双方向データバウンドページプロパティのオブザーバーです。
<link rel="import" href="../bower_components/lc-app-layout/lc-app-layout.html">
<lc-app-layout categories="[[categories]]" page="[[page]]" category-name="{{categoryName}}">
<iron-pages role="main" selected="[[page]]" attr-for-selected="name" selected-attribute="visible">
<!-- home view -->
<shop-home name="home" categories="[[categories]]"></shop-home>
<!-- list view of items in a category -->
<shop-list name="list" route="[[subroute]]" offline="[[offline]]" query-Params="[[queryParams]]"></shop-list>
<!-- detail view of one item -->
<shop-detail name="detail" route="[[subroute]]" offline="[[offline]]"></shop-detail>
</iron-pages>
</lc-app-layout>
もlayout
と同じ方法でロードされているアプリ自体、中にいくつかの怠惰なressourcesを持っている:私のショップアプリ自体に
は、私がlayout
要素とても似ています。
私はeverythinを構築したいとき今、私はアナライザはそれのdependencysを見つけるようにPolymer.json
へのフラグメントとしてlayout
要素のlazy-resurces
を追加する必要があります。
"fragments": [
"src/view/list/shop-list.html",
"src/view/detail/shop-detail.html",
"src/lazy-resources.html",
"bower_components/lc-app-layout/lazy-resources.html"
ありません、私は、このサービスを提供ビルドすると、ほとんどの時間はページにロードされません。
私はネットワークの速度を抑えると、すべてがロードされる可能性が高くなります。ですから、私は、非同期のImportHrefなどのタイミング問題があると想定しています。または、私はちょうどlayout
要素の私の怠け者のリソースをスキャンするようにアナライザに伝えるために断片を欠場ですか?
私はPolymer-CLI 0.18.0を使用しています。 polymer serve
でアプリを実行すると意図したとおりに動作します。