引用Handlebars.js中的数组项

时间:2014-08-30 07:12:54

标签: javascript json handlebars.js

我是从一个看似这样的CSV创建的json,

[["Year","Make","Model","Description","Price"],["1997","Ford","E350","ac, abs, moon","3000.00"],["1999","Chevy","Venture \"Extended Edition\"","","4900.00"],["1999","Chevy","Venture \"Extended Edition, Very Large\"","","5000.00"],["1996","Jeep","Grand Cherokee","MUST SELL!\nair, moon roof, loaded","4799.00"]] 

我需要在使用Handlebars.js的模板中使用它,我知道什么时候使用这个时json是这样的

[{"data" : "data1"},{.....}] 

但是当json看起来像我在乞讨时给出的那个,当我尝试下面的代码时,我不知道如何使用把手,

        {{#each this}}
        <li>{{0}}</li>
        {{/each}}

我在控制台上收到以下错误

Uncaught Error: Parse error on line 3:
...}            <li>{{0}}</li>           
----------------------^
Expecting 'ID', 'DATA', got 'NUMBER' 

无论如何要访问模板的json数据,模板或json的错误是什么?我该如何解决?

2 个答案:

答案 0 :(得分:1)

你需要用方括号包装它:

<ul>
  {{#each this}}
    <li>{{[0]}}</li>
  {{/each}}
</ul>

演示:http://jsbin.com/teduxeduvoqi/1/edit


来自the docs的引用:

  

要引用不是有效标识符的属性,可以使用segment-literal表示法[

答案 1 :(得分:0)

像这样使用:{{this[0]}}