聚合物铁 - 滚动阈值与铁 - ajax

时间:2016-09-22 11:23:03

标签: ajax polymer polymer-starter-kit

是否有关于如何使用iron-ajax的iron-scroll-threshold的指令/示例。

基本上,我想使用iron-scroll-threshold来加载更多内容,使用iron-ajax超时滚动达到阈值。

但是,我发现的所有示例都可以使用javascript通过AJAX加载更多内容。如果有一种方法可以使用iron-ajax完成所有操作,那么我可以保持代码更清洁。

1 个答案:

答案 0 :(得分:0)

查看此JSBin以获取完整示例。

简而言之,您需要处理iron-scroll-treshold的{​​{1}}或on-lower-threshold事件,您可以在其中调用on-upper-threshold' s {{ 1}}方法。您还需要处理iron-ajax generateRequest()事件中的新项目。

代码:

iron-ajax

注意

该示例基于我之前answer之一与on-response<dom-module id="test-app"> <template> <iron-ajax id="ajax" url="https://randomuser.me/api/" handle-as="json" params='{"results": 20}' on-response="categoriesLoaded"> </iron-ajax> <iron-scroll-threshold on-lower-threshold="loadMoreData" id="threshold"> <iron-list id="list" items="[[categoriesJobs]]" as="person" scroll-target="threshold"> <template> <!-- item template --> </template> </iron-list> </iron-scroll-threshold> </template> <script> Polymer({ is: 'test-app', attached: function() { this.categoriesJobs = []; }, loadMoreData: function () { console.log('load more data'); this.$.ajax.generateRequest(); }, categoriesLoaded: function (e) { var self = this; var people = e.detail.response.results; people.forEach(function(element) { self.push('categoriesJobs', element); }); this.$.threshold.clearTriggers(); } }); </script> </dom-module> 相关的问题。