流星使用 Template.registerHelpers,

Meteor using Template.registerHelpers,

我正在尝试将 2 个初学者 类 组合在一起 (https://www.meteor.com/tutorials/blaze/templates & http://meteortips.com/second-meteor-tutorial/iron-router-part-1/)。我已经能够毫无问题地单独完成 类。

我正在使用 Iron:Router 路由到各种模板。当我尝试访问模板中的模板时,我 运行 遇到了问题。正确的结果不会显示在“aotasks”页面上。

.js:

Router.route('aostask', {

    template: 'aostask'
});

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

if (Meteor.isClient) {
  // This code only runs on the client
  Template.registerHelpers('task', function () {
      return tasks.find({});
    })
  };

.html:

<template name= "aostask">

    <head>
  <title>Todo List</title>
</head>

<body>
  <div class="container">
    <header>
      <h1>Todo List</h1>
    </header>

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



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

结果:

具有正确 headers.However 的页面,它没有列出我在 mongo collection 中的任务。问题是我没有正确使用 registerHelper 函数吗?我应该使用其他功能吗?

提前致谢。

你的助手名字有错字

Template.registerHelper('tasks', function () {
      return tasks.find({});
    })
  };

tasks 不是 task

您的助手注册时使用的名称与您的模板相同。它应该只是 'task'。 Template.registerHelpers 应该是 Template.registerHelper

if (Meteor.isClient) {
  // This code only runs on the client
  Template.registerHelper('task', function () {
      return Tasks.find({});
    })
  };