组件向子孙级组件传值,途径组件读取报错undefined
当父组件向孙组件传递值时,会偶然出现undefined错误。
//例如爷爷组件向孙子组件传值,孙子组件通过props取值
//此时父级组件如果通过props接收一下字再向孙组件传值
//父组件可能会出现属性读取undefined错误
//爷组件
<parent :parent="Object"></parent>
//父组件
<child :child="parent.param1"></child>
//···
props:{
parent:{type:Object}
}
//孙组件
//···
props:{
child:{
type:Object
}
}
解决方法
第一种:
继续使用props传值,父组件添加v-if判断,当parent参数不为空时,v-if才会渲染,值向孙组件传值。
//父组件
···
<template>
<div v-if="parent != undefined">
<child :child="parent.param1"></child>
</div>
</template>
第二种:
使用$attrs向孙组件传值 $attrs使用