如何通过铁页通知页面转换

gro*_*uma 4 polymer polymer-1.0

我正在使用Polymer Starter Kit来构建一个有几页的简单应用程序.我希望其中一个页面显示从服务器加载的项目列表.问题是该列表必须仅在页面可见/转换时加载.我应该如何通知"lazy-list"实际开始加载数据?

<iron-pages attr-for-selected="data-route" selected="{{route}}">

 <section data-route="some-page">
   <paper-material>
      <lazy-list></lazy-list>
   </paper-material>
 </section>

 <section data-route="another page">
   <paper-material elevation="1">
      ...
   </paper-material>
 </section>

</iron-pages>
Run Code Online (Sandbox Code Playgroud)

zer*_*evx 7

或者你可以观察route和何时route === "some-page"发送刷新请求<lazy-list>

<dom-module id="my-app">
  <template>
    ...
    <iron-pages attr-for-selected="data-route" selected="{{route}}">

     <section data-route="some-page">
       <paper-material>
          <lazy-list id="list"></lazy-list>
       </paper-material>
     </section>

     <section data-route="another page">
       <paper-material elevation="1">
          ...
       </paper-material>
     </section>

    </iron-pages>
    ...
  </template>

  <script>
    Polymer({
      is: "my-app",
      properties: {
        route: {
          type: String,
          observer: "routeChanged"
        },
        ...
      },
      ...
      routeChanged: function (newval,oldval) {
        if (newval === "some-page") {
          this.$.list.refreshList();
        }
      },
      ...
    });
  </script>
</dom-module>
Run Code Online (Sandbox Code Playgroud)

不需要新的元素.