Meteor Iron Router: передача данных между маршрутами
Как передать данные между двумя разными маршрутами и шаблонами?
У меня есть файл javascript в клиентской части (папка клиента), который просто вызывает Router.go (), передавая идентификатор сообщения в качестве одного из моих параметров.
Ниже приведены три основных виновника (я считаю). Я'Вы удалили большую часть кода, чтобы его было легче читать. Я могу изменить наPostDetail страница без проблем. Я также могу получитьсообщения дан наPostDetail страницу от роутера. Моя проблема в записи базы данных (ОПРОС), который извлекается, не отображается в шаблоне. следовательно{{Вопрос}} всегда пусто, даже если запись в базе данных возвращается.
Дайте мне знать, если я должен опубликовать больше информации.
FrontEnd.js
Template.PostTiles.events({
// When a choice is selected
'click .pin' : function(event, template) {
Router.go('Post', {_PostId: this.PostId});
}
});
после detail.html
{{Question}}<p></p>
Shared.js
Router.map( function() {
this.route('Home', {
path: '/',
template: 'PostTiles',
data: {
// Here we can return DB data instead of attaching
// a helper method to the Template object
QuestionsList: function() {
return POLL.find().fetch();
}
}
});
this.route('Post', {
template: 'PostDetail',
path: '/Post/:_PostId',
data: function() {
return POLL.findOne(this.params._PostId);
},
renderTemplates: {
'disqus': {to: 'comments'}
}
});
});
----- Обновить -----
Я думаю я'Мы сузили проблему до возможности отображать только одну запись базы данных вместо их списка с использованием{{#each SomeList}} синтаксис.