首先说明,下边的回答是不正确的,我也是最近开始看 vue,都是根据文档来的,然后在讨论的过程中发现了问题,可以确认的是 vue props 设置的默认值和类型检查之类的只检测第一层,而里层的内容是不检测的,具体可以看这里。
如下所示,只能检测传过来的 propC propC 的类型和默认值,而不会检测 propD 的属性 Da、Db 的值
Vue.component('example', {
props: {
propC: {
type: String,
required: true
},
// 上边的是可以的,而下边的是不可以的
propD: {
Da:{
type: Number,
default: 100
},
Db:{
type: String,
default: ''
}
}
}
})
-----以下是原答案-----
先抄一段文档:
Vue.component('example', {
props: {
// 基础类型检测 (`null` 意思是任何类型都可以)
propA: Number,
// 多种类型
propB: [String, Number],
// 必传且是字符串
propC: {