我对meteor很新,在尝试使用Iron Router将url参数传递给Collection并检索一些数据进行显示时遇到了问题。
具体来说,我有一个带有事件的集合,我希望有一个页面更详细地显示单个页面。
PS:我已成功使用Iron Router和Meteor的发布/订阅逻辑执行其他任务,例如显示所有事件,创建事件并将其保存到个人列表中
event.html
<template name="event">
<div class="page-header">
<h1>{{title}}</h1>
</div>
<div class="container">
<p>{{content}}</p>
</div>
</template>
router.js
this.route('event',{
path: '/event/:_id',
waitOn: function () {
return Meteor.subscribe('Events');
},
data: function () {
return Events.findOne(this.params._id);
}
});
发布在publish.js中的服务器上发生,并在路由器中订阅 publish.js
Meteor.publish('Events', function () {
return Events.find();
});
router.js
Router.configure({
(..)
waitOn: function() {
return [
Meteor.subscribe('Events'),
Meteor.subscribe('myEvents')
];
}
});
我一直在看Manuel Schoebel的这个教程link
一切都很好,直到收集查找发生的那一刻。当我从集合中记录结果数据时,它是undefined
data: function () {
var event = Events.findOne(this.params._id);
console.log(event);
return event;
}
答案 0 :(得分:0)
错误的是,我把:
放在了原本不应该的地方
结束问题。