把手表达式中的concat变量

时间:2016-01-19 16:22:26

标签: javascript handlebars.js

是否有可能在把手表达式中连接变量 - 例如在每个?

{{#each foo/cat{{bar.id}}}}

以上结果应与写

相同
{{#each foo/cat2}}

想法?

1 个答案:

答案 0 :(得分:1)

我认为如果你遇到这个问题,那么你的数据结构需要改变就是一个线索。尽管如此,我相信没有创建自定义助手就无法找到解决方案。我认为最简单的方法是创建一个帮助器来连接前缀和id,然后使用内置的lookup帮助器来访问foo的成员:

Handlebars.registerHelper('concat', function(prefix, id) {
    return (prefix + id);
});

{{#each (lookup foo (concat 'cat' bar.id))}}

{{/each}}