如何在 node.js 上的车把辅助块中引用多个元素?
How to reference more than one element in an handlebars helper block on node.js?
所以,我有这样一个对象:
object = {
"group_1": [
{
"name": "Foo"
}
],
"group_2": [
{
"name": "Bar"
}
]
}
在我的 hbs 视图中,我是这样做的:
{{#each group_1}}
<p>{{name}}</p>
{{/each}}
{{#each group_2}}
<p>{{name}}</p>
{{/each}}
有什么方法可以连接两者而不重复代码吗?解决方案是这样的:
{{#each group_1 + group_2}}
<p>{{name}}</p>
{{/each}}
知道怎么做吗?
Handlebars 本身不支持这个。
但你仍然可以这样做:
object.groups = object.group_1.concat(object.group_2);
{{#each groups}}
<p>{{name}}</p>
{{/each}}
这似乎是一个简单的解决方案。
或者,您可以将两个组都放入一个对象中,然后像这样对其进行迭代:
let object = {
groups: {
'group_1': [
{
'name': 'Foo'
}
],
'group_2': [
{
'name': 'Bar'
}
]
}
};
{{#each groups}}
{{!-- you can refference group name as @key here --}}
{{#each this}}
{{name}}
{{/each}}
{{/each}}
所以,我有这样一个对象:
object = {
"group_1": [
{
"name": "Foo"
}
],
"group_2": [
{
"name": "Bar"
}
]
}
在我的 hbs 视图中,我是这样做的:
{{#each group_1}}
<p>{{name}}</p>
{{/each}}
{{#each group_2}}
<p>{{name}}</p>
{{/each}}
有什么方法可以连接两者而不重复代码吗?解决方案是这样的:
{{#each group_1 + group_2}}
<p>{{name}}</p>
{{/each}}
知道怎么做吗?
Handlebars 本身不支持这个。 但你仍然可以这样做:
object.groups = object.group_1.concat(object.group_2);
{{#each groups}}
<p>{{name}}</p>
{{/each}}
这似乎是一个简单的解决方案。
或者,您可以将两个组都放入一个对象中,然后像这样对其进行迭代:
let object = {
groups: {
'group_1': [
{
'name': 'Foo'
}
],
'group_2': [
{
'name': 'Bar'
}
]
}
};
{{#each groups}}
{{!-- you can refference group name as @key here --}}
{{#each this}}
{{name}}
{{/each}}
{{/each}}