Handlebars.js:分配给模板时为空道具

时间:2018-09-24 16:12:57

标签: javascript html templates handlebars.js frontend

当我登录时,它显示:

"names": {
    "en": "X"
},
"images": [
    "https://x.com/1.jpg"
]

,模板为:

<div>{{images.[1]}}</div>                       
<div>{{names.en}}</div>

但是图像的div为空。

该如何解决?

2 个答案:

答案 0 :(得分:4)

尝试:

function unique(&$ag){
 array_walk($ag,function($itm,$key) use (&$ag,&$res) {
     if (isset($res[json_encode($itm)]))  array_splice($ag,$key,1);
     else                                 $res[json_encode($itm)]=1.;
 });
}

unique($array['games']);

echo json_encode($array)

Handlebars语法很奇怪,如果要访问数组中的元素,请执行以下操作:

{"games":[["vollyball","football"],["rubby","chess"]]}

这不起作用:

<div>{{images.[0]}}</div>   

但是,如果元素具有嵌套属性,则可以执行以下操作:

{{images.[0]}}

答案 1 :(得分:2)

<div>{{images[0]}}</div>                       
<div>{{names.en}}</div>

images是一个数组,数组索引从0开始。