web前端全系列 教程
1839个小节阅读:2243.8k
鸿蒙应用开发
C语言快速入门
JAVA全系列 教程
面向对象的程序设计语言
Python全系列 教程
Python3.x版本,未来主流的版本
人工智能 教程
顺势而为,AI创新未来
大厂算法 教程
算法,程序员自我提升必经之路
C++ 教程
一门通用计算机编程语言
微服务 教程
目前业界流行的框架组合
web前端全系列 教程
通向WEB技术世界的钥匙
大数据全系列 教程
站在云端操控万千数据
AIGC全能工具班
A A
White Night
Vue 组件可以更细致地声明对传入的 props 的校验要求
xxxxxxxxxx
<template>
<h3>ComponentA</h3>
<ComponentB title="Props效验" :userInfo="userInfo"/>
</template>
<script>
import ComponentB from "./ComponentB.vue"
export default {
data(){
return{
userInfo:{
name:"iwen",
age:20
}
}
},
components:{
ComponentB
}
}
</script>
xxxxxxxxxx
<template>
<h3>ComponentB</h3>
<p></p>
<p></p>
<p></p>
</template>
<script>
export default {
props:{
title:{
type:String
},
userInfo:{
type:Object
}
}
}
</script>
xxxxxxxxxx
<template>
<h3>ComponentB</h3>
<p></p>
<p></p>
<p></p>
<p></p>
</template>
<script>
export default {
props:{
title:{
type:String
},
userInfo:{
type:Object,
default(){
return {}
}
},
age:{
type:Number,
default:20
}
}
}
</script>
xxxxxxxxxx
<template>
<h3>ComponentB</h3>
<p></p>
<p></p>
<p></p>
<p></p>
</template>
<script>
export default {
props:{
title:{
type:String,
required:true
},
userInfo:{
type:Object,
// 对象或者数组应当用工厂函数返回
default(){
return {}
}
},
age:{
type:Number,
default:20
}
}
}
</script>
温馨提示
警告!prop 是只读的!
xxxxxxxxxx
<template>
<h3>ComponentB</h3>
<p></p>
<button @click="updateHandle">修改数据</button>
</template>
<script>
export default {
props:{
title:{
type:String,
required:true
}
},
updateHandle(){
// 警告!prop 是只读的!
this.title = "不允许修改"
}
}
</script>
实时效果反馈
1. props
传递数据,下列那个是效验props
的必选项:
A default
B type
C required
D props
答案
1=>C