在流星中显示收集数据时遇到问题

时间:2015-11-09 04:24:45

标签: meteor

我的Meteor项目中有收集问题。我将以下代码添加到我的Resolutions.js文件中:

Resolutions = new Mongo.Collection('resolutions');

if (Meteor.isClient) {
  Template.body.helpers({
resolutions: function() {
  Resolutions.find({});
}
});

Template.body.events({
'submit .new-resolution': function(event) {
  var title = event.target.title.value;

  Resolutions.insert({
    title: title,
    createdAt: new Date()
  });

  event.target.title.value = "";

  return false;
 }
});
}

if (Meteor.isServer) {
 Meteor.startup(function () {
 // code to run on server at startup
});
}

并将以下内容添加到我的Resolutions.html文件中:

<head>
  <title>Resolutions</title>
</head>

<body>
  <div class="container">
    <header>
      <h1>Monthly Resolutions</h1>

      <form class="new-resolution">
        <input type="text" name="title" placeholder="A new resolution" />
        <input type="submit" value="Submit"/>
      </form>
    </header>

    <ul>
      {{#each resolutions}}
        {{> resolution}}
      {{/each}}
    </ul>
  </div>
</body>

<template name="resolution">
  <li>{{title}}</li>
</template>

运行应用程序后,我得到零错误,但网站仍未返回任何收集值。我不知道这个项目有什么问题。

1 个答案:

答案 0 :(得分:4)

Template.body.helpers({
    resolutions: function() {
        return Resolutions.find({});
    }
});

您忘记使用 return 关键字。请记住,在创建帮助程序时,您始终需要返回一个值。