如果"这个"在车把中{{#each this}}并不起作用是空字符串

时间:2015-11-19 00:34:51

标签: javascript json handlebars.js

考虑我的json是这样的:

{
    main: {
        "" : [{some_obj},{some_obj}]
    },
    secondary: {
        "key": [{some_obj},{some_obj}]
    }
}

现在我的第一个#each将为主要和次要运行。

{{#each this}}
    -- This is for main and secondary --
    {{#each this}}
        -- This is for "" in case of main and "key" in case of secondary --
    {{/each}}
{{/each}} 

如果"这个"我的嵌套#each不会工作。是空的,如我的json所示" main"属性

1 个答案:

答案 0 :(得分:0)

似乎3.x.x有一个导致此问题的错误。 4.0.0中的Here's the commit that fixes this

我使用下面的代码检查了这些版本:

4.x.x:好的

3.x.x:不行

2.0.0:好的

var data = {
  main: {
    "": [1, 2, 3]
  },
  secondary: {
    "key": [3, 4, 5]
  }
};
var compiled = Handlebars.compile(document.getElementById('temp').innerHTML);
document.write(compiled(data));
<script src="https://cdnjs.cloudflare.com/ajax/libs/handlebars.js/4.0.5/handlebars.js"></script>
<script id="temp" type="text/x-handlebars-template">
  {{#each this}}
    {{@key}}<br>
    {{#each this}}
      &nbsp;&nbsp;"{{@key}}": {{this}}<br>
    {{/each}}
  {{/each}} 
</script>