我对应该如何请求更多数据(例如使用API​​)并将其附加到我已经获得的列表上感到非常困惑。

假设我们具有无限滚动功能或“加载更多”按钮,并且在事件触发时,我加载了更多数据(不包括已经拥有的数据)并追加了数据。

我尝试创建铁路由器服务器路由,但无法使用Ajax检索它,因为它是一条客户端路由,所以我的呼叫始终在处理它。

使用Meteor进行更新的最新方式是什么?

我的尝试是

Router.route('/posts',{where: 'server'}).get(function(){
  // do something
});


和这个

Router.route('/posts', function () {
  this.layout(null);

  var req = this.request;
  var res = this.response;

  res.end(JSON.stringify({}));
}, {where: 'server'});

最佳答案

请记住流星的反应性。阿波罗流星之前的核心思想是订阅一些数据,以便返回的数据是您此时需要显示的数据。

也就是说,对于无限滚动,我过去看到的是使用反应式var设置订阅的“过滤器”。向下滚动时,事件触发时,您只需更新过滤器,然后(响应地)触发对订阅的更新(有效),然后扩大订阅的数据。

过滤的方式在很大程度上取决于您的数据,但基本上使用的方式可以使您对数据进行排序并扩展返回的“限制计数”。

07-24 18:12
查看更多