我有一个使用Meteor构建的应用程序,它使用Iron Router。我的布局使用多个yield模板,我想为每个模板传递不同的数据。
它成功地将任务传递给tasksList模板,但没有将selectedTask传递给taskDetail模板。
是否可以有多个数据源,并且这是正确的方法吗?如果是,那么为什么它不起作用?
提前感谢! :-)
它成功地将任务传递给tasksList模板,但没有将selectedTask传递给taskDetail模板。
是否可以有多个数据源,并且这是正确的方法吗?如果是,那么为什么它不起作用?
提前感谢! :-)
Router.map(function() {
this.route('tasksList', {
path: '/',
layoutTemplate: 'layout',
template: 'tasksList',
yieldTemplates: {
'taskDetail': {to: 'rightTemplate'}
},
data: {
tasks: function(){ return Tasks.find() },
selectedTask: function() { return Tasks.findOne() }
}
});
});
<template name="layout">
<section class="wrapper">
<div class="left-pane">
{{yield}}
</div>
<div class="right-pane">
{{yield 'rightTemplate'}}
</div>
</section>
</template>
<template name="tasksList">
<ul>
{{#each tasks}}
<li>{{detail}}</li>
{{/each}}
</ul>
</template>
<template name="taskDetail">
{{#each selectedTask}}
<div>{{detail}}</div>
{{/each}}
</template>
data: { tasks: [{detail: 'foo'}, {detail: 'foo'}], selectedTask: [{detail: 'bar'}, {detail: 'bar'}]
} - kbascombe