Meteor:如何对简单的todos演示进行分页?

时间:2015-12-14 22:59:02

标签: javascript meteor pagination

我今天看着Meteor的分页。

我对这个回购感兴趣:

https://github.com/alethes/meteor-pages

显示的初始代码看起来很简单:

this.Pages = new Meteor.Pagination("collection-name");

<body>
    {{> collection-name}}
</body>
<template name="collection-name">
    {{> pages}}
    {{> pagesNav}}  <!--Bottom navigation-->
</template>

我想分页这个演示:

https://github.com/meteor/simple-todos

我看到的代码简化了这一点:

Tasks = new Mongo.Collection("tasks");

if (Meteor.isServer) {
  // This code only runs on the server
  Meteor.publish("tasks", function () {
    return Tasks.find({})})}


if (Meteor.isClient) {
  // This code only runs on the client
  Meteor.subscribe("tasks");
  // ...
}

<body>
    <ul>
      {{#each tasks}}
        {{> task}}
      {{/each}}
    </ul>
</body>

<template name="task">
  <li>
    {{text}}
  </li>
</template>

今天也许我的大脑有点慢。 我不清楚如何对上面的代码进行分页。

我如何使用 github.com/alethes/meteor-pages 从simple-todos中分页上面的代码?

1 个答案:

答案 0 :(得分:0)

因为我使用了meteor-pages已经有一段时间了,但你应该能够用Tasks = new Mongo.Collection("tasks");替换this.Tasks = new Meteor.Pagination("tasks"); - 客户端和服务器之间的公共代码。

基本上,流星页面只是在mongo集合周围创建一个包装器,并应用搜索和过滤条件。

如果您熟悉coffeescript,请务必查看回购邮件中的/examples目录。

此外,设置https://github.com/alethes/meteor-pages#settings将有助于解释一些默认设置,例如每页的项目等。