我的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>
运行应用程序后,我得到零错误,但网站仍未返回任何收集值。我不知道这个项目有什么问题。
答案 0 :(得分:4)
Template.body.helpers({
resolutions: function() {
return Resolutions.find({});
}
});
您忘记使用 return 关键字。请记住,在创建帮助程序时,您始终需要返回一个值。