在handlebars.js中使用具有数字属性的对象

时间:2013-01-16 18:57:19

标签: javascript handlebars.js

是否可以将Handlebars与具有数字键的对象一起使用?

例如:

var str = "<div>{{apples}}</div>",
    tmpl = Handlebars.compile(str);

tmpl({apples: "works!"}); // returns "<div>works!</div>"

效果很好,但是

var str = "<div>{{4}}</div>",
    tmpl = Handlebars.compile(str);

tmpl({4: "works!"}); 
// returns Error: Parse error on line 1: <div>{{4}}</div> -------^ Expecting 'DATA', 'ID', got 'INTEGER'

我在搜索时找不到任何对此的引用,我还没有探索过源代码。

1 个答案:

答案 0 :(得分:16)

所以在进一步观察之后,我发现我需要将数字包在方括号中,例如:

{{[4]}}

以下是半相关SO问题How do I access an access array item by index in handlebars?

的链接

以上链接指的是访问数组项,但答案让我想到尝试将数字路径包装在方括号中。