请问下我在子组件定义一个
// 带有默认值的对象
propE: {
type: Object,
// 对象或数组默认值必须从一个工厂函数获取
default: function () {
return { message: 'hello' }
}
},
如果我在父组件调用时传的对象:propE="{ test:'1213' }"。。它是没有message这个属性的,,如何把父组件传入参数和子组件定义的propE合并
请问下我在子组件定义一个
// 带有默认值的对象
propE: {
type: Object,
// 对象或数组默认值必须从一个工厂函数获取
default: function () {
return { message: 'hello' }
}
},
如果我在父组件调用时传的对象:propE="{ test:'1213' }"。。它是没有message这个属性的,,如何把父组件传入参数和子组件定义的propE合并
default:any
为该 prop 指定一个默认值。如果该 prop 没有被传入,则换做用这个值。对象或数组的默认值必须从一个工厂函数返回。
由文档解释我们可以很清楚地知道 default 的内容只在该prop没传入时生效, 不能用来合并 对象属性,像楼上所说,你的需求可以通过计算属性来实现。
props: ['propE'],
data: function () {
return {
propELocal: {message: 'hello', test: this.propE.test}
}
}
或者
props: ['propE'],
computed: {
propELocal: function () {
return {message: 'hello', test: this.propE.test}
}
}
5 回答7.2k 阅读✓ 已解决
5 回答8.2k 阅读
2 回答10.4k 阅读✓ 已解决
2 回答12.7k 阅读✓ 已解决
2 回答10.5k 阅读✓ 已解决
1 回答5.1k 阅读✓ 已解决
2 回答1.8k 阅读✓ 已解决
用计算属性