我正在通过构建一个包含几个页面的简单应用程序来使用 polymer 入门套件。我希望其中一个页面显示从服务器加载的项目列表。问题是该列表必须仅在页面可见/转换时加载。我应该如何通知“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>
最佳答案
或者你可以观察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>
不需要新元素。
关于polymer - 如何使用iron-pages通知页面转换,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/30884035/