如何在 Meteor 中使用数组动态渲染多个模板?
How to use an array to render dynamically multiple templates in Meteor?
我在使用助手中的数据呈现模板时遇到问题。
Template.bonus.helpers({
Userform: function(){
return UserForms.find({owner:Meteor.userId()});
},
warehouse: function(){
return Warehouse.find({});
},
DisplayForm: [
{ formname: "SW - Picking" },
{ formname: "SW - Packing" },
{ formname: "SW - Putaway" }
]
});
基本上我只想实现这样的目标:
<div id="placeholder" class="col-md-8">
{{#each DisplayForm}}
{{> {{formname}} }} //Render 3 templates "SW - Picking","SW - ....
{{/each}}
</div>
我相信这很容易,但我只需要正确的语法,这样我就可以使用来自助手的数据作为要呈现的模板的名称。
您可以使用 {{> Template.dynamic template=template [data=data] }}
.
在 Meteor 中动态包含模板
例如:
<body>
{{> bonus}}
</body>
<template name="bonus">
{{#each displayForm}}
{{> Template.dynamic template=formname }}
<br />
{{/each}}
</template>
<template name="picking">
Picking Template
</template>
<template name="packing">
Packing Template
</template>
<template name="putaway">
Putaway Template
</template>
if (Meteor.isClient) {
Template.bonus.helpers({
displayForm: [{
formname: "picking"
}, {
formname: "packing"
}, {
formname: "putaway"
}]
});
}
这里是MeteorPad.
我在使用助手中的数据呈现模板时遇到问题。
Template.bonus.helpers({
Userform: function(){
return UserForms.find({owner:Meteor.userId()});
},
warehouse: function(){
return Warehouse.find({});
},
DisplayForm: [
{ formname: "SW - Picking" },
{ formname: "SW - Packing" },
{ formname: "SW - Putaway" }
]
});
基本上我只想实现这样的目标:
<div id="placeholder" class="col-md-8">
{{#each DisplayForm}}
{{> {{formname}} }} //Render 3 templates "SW - Picking","SW - ....
{{/each}}
</div>
我相信这很容易,但我只需要正确的语法,这样我就可以使用来自助手的数据作为要呈现的模板的名称。
您可以使用 {{> Template.dynamic template=template [data=data] }}
.
例如:
<body>
{{> bonus}}
</body>
<template name="bonus">
{{#each displayForm}}
{{> Template.dynamic template=formname }}
<br />
{{/each}}
</template>
<template name="picking">
Picking Template
</template>
<template name="packing">
Packing Template
</template>
<template name="putaway">
Putaway Template
</template>
if (Meteor.isClient) {
Template.bonus.helpers({
displayForm: [{
formname: "picking"
}, {
formname: "packing"
}, {
formname: "putaway"
}]
});
}
这里是MeteorPad.