gpt4 book ai didi

javascript - Meteor:在模板内渲染模板

转载 作者:行者123 更新时间:2023-12-03 11:37:29 24 4
gpt4 key购买 nike

我在“poSTList”模板上有一个姓名列表。这些是创建该帖子的人的“用户名”。我创建了一个 href 链接,以便当用户单击该名称时,他们会被路由/定向到新模板“viewpost”并能够查看完整的帖子文档。

但是,我希望“viewpost”模板能够在我将 {{> Yield}} 放入“poSTList”模板中的位置进行渲染。如何配置layoutTemplate,因为我已经有一个适用于应用程序的另一部分的layoutTemplate。

当然,这个帖子文档显然应该根据用户点击的名称进行更改。

想想 Meteor todos 的例子。根据您点击“加入”还是“登录”,将呈现相关模板。

所以到目前为止我所拥有的内容如下。

poSTList.html(显示帖子文档中“全名”字段的列表)。

<template name="postlist"> 
<div class="container">
<div class="col-sm-3">
{{#each post}}
<li><a href="{{pathFor 'viewpost'}}" >{{fullname}}</a></li>
{{/each}}
</div>
</div>
{{> yield}}
</template>

路由器.js

Router.map(function(){
this.route('postlist',{
path: '/postlist',
template: 'postlist',
waitOn: function(){
return Meteor.subscribe('posts');
},
data: function(){
return {post: Posts.find({})};
}
});
this.route('viewpost',{
path: '/viewpost/:_id',
template: 'viewpost',
waitOn: function(){
return Meteor.subscribe('posts');
},
data: function() { return Posts.findOne(this.params._id); }
});
});

最佳答案

由于“viewpost”模板和“poSTList”模板之间似乎没有太多内容重叠,我认为仅使用 {{> viewpost currentPost}} 代替 Yield,并以编程方式设置 currentPost。例如,在帖子列表模板中,您可以有一个 currentPost 变量来返回当前帖子的数据,如下所示:

Template.postlist.helpers({
currentPost: function () {
return Posts.findOne(Session.get('currentPost'));
}
});

只需在单击帖子列表模板中的链接时设置 session 即可。

关于javascript - Meteor:在模板内渲染模板,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/26423673/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com