我有一个包含第二个模板的模板,我想制作第二个模板变量ie。它可以根据我传递的模板名称而改变。
<template name="template1">
<div>
{{> template2}}
</div>
</template>
因此,当我的主页显示template1时,我想指定用于template2的模板。
<template name="main">
{{> template1 TemplateArgs }}
</template>
我知道如何设置TemplateArgs - 它将包含我想用于template2的模板的名称。
这可能吗?
答案 0 :(得分:1)
meteor的未来版本允许使用新的Meteor UI功能。目前,您需要以不同的方式手动执行此操作。请参阅Meteor set overall template context。
当心流星UI仍处于测试状态,并且有点儿麻烦。有关post in the references
的更多详情如果您使用meteor UI(可以在预览模式下使用)
meteor --release template-engine-preview-5
然后你可以做这样的事情
Template.main.template1 = function (value2) {
return Template["template2"].withData({foo: "bar", value2: value2}));
}
然后html喜欢
{{>template1 "valueofvalue2"}}
当前版本的meteor有一种方法,但它不会与UI版本一起使用,因为Meteor.render
将逐步淘汰以支持使用DOM对象
Template.main.template1 = function(value2) {
return Meteor.render(Template.template2({foo: "bar", value2: value2});
}
然后在你的HTML中这样的东西。您可能必须使用数据才能使其正常工作,但这类似
{{template1 "value2"}}