vue子组件设置默认值为Object或者Array时,报错Invalid default value for prop “XXX”: Props with type Object/Array,翻译为[Vue warn]:属性“XXX”的默认值无效:类型为Object/Array的道具必须使用工厂函数返回默认值。如下
此类问题原因在于Props在设置默认值default时若值类型为Object或者Array时不能直接default而是需要使用函数通过return将值返回出来才可以,如下
1. 错误写法
list: {
type: [Array, Object],
default: [
{
a:1,
b:2
},
{
a:1,
b:2
},
{
a:1,
b:2
}
]
}
2.正确写法
list: {
type: [Array, Object],
default: () => {
return [
{
a:1,
b:2
},
{
a:1,
b:2
},
{
a:1,
b:2
}
]
}
}