这是我的webpack vue项目的一部分。
<template>
<div>
<p>notes is: {{notes}}</p>
<p>{{notes[0]}}</p>
<Card :note="notes[0]"/>
<Card :note="this.notes[0]"/>
</div>
</template>
<script type="text/javascript">
import Card from './Card/Card.vue'
export default {
name: 'Card',
props: ["notes"],
components: {
Card
}
}
</script>
notes
是父组件的props值。
这是编译到网页后的结果。
您可以看到notes
是一个数组,并显示在p个元素中。
但是当我尝试将其支持到子组件时,浏览器抛出错误: 无法读取未定义的属性“ 0”。
是什么使notes
不确定?
答案 0 :(得分:0)
'notes'。因此,vue在渲染期间无法访问所需的值。
只需在将模板作为道具传递到子组件的任何地方添加参考保护
<Card :note="notes && notes[0]"/>
答案 1 :(得分:-1)
道具在组件渲染完成后才可用,您可以使用v-if,并且不会出现错误