1
我有一个项目列表,每个项目可以有一个Photo
项目或不。Handlebarsjs对象数组:类型错误:无法读取属性'ID'的未定义
我正在循环使用this
。
这是罚款时,所有项目都有一个Photo
:
<script id='library-template' type="text/x-handlebars-template">
{{#this}}
<div class='box'>
<a href='#insight' data-insight_id="{{Item.id}}">
{{#if Photo.0.id }}
{{Photo.0.photo}}
{{/if}}
</a>
<div class='subtitle'>
<h2>{{Item.title}}</h2>
<p>Added: {{Item.created}}</p>
</div>
</div>
{{/this}}
</script>
当当前对象没有照片对象:
TypeError: Cannot read property 'id' of undefined
我的对象的格式:
[
Object
Item: Object
Photo: Array[1]
Rating: Array[0]
Tag: Array[0]
__proto__: Object
,
Object
Item: Object
Photo: Array[0]
Rating: Array[0]
Tag: Array[0]
__proto__: Object
,
Object
,
Object
,
Object
]
第二个对象没有Photo
记录所有其他对象这样做。
如何访问照片对象,确保在照片没有内容时不会出现错误?
注意:测试{{#if Photo.0}}而不是{{#if Photo.0.id}}结果:
错误:解析第5行的错误:...}“> {{##如果照片0}} {{照片0 ---------------------- ^期待'ID'
修正:万一有人在这里添加在同一个问题上运行:\t \t \t \t {{#如果Photo.length}} \t \t \t \t \t \t {{Photo.0.photo}} \t \t \t \t {{/如果}} – Wils