使用$props
对象显示收到的道具。
<template>
<div>
<h3>Received Props</h3>
<p>This is the $props object:</p>
<pre>{{ this.$props }}</pre>
</div>
</template>
运行示例 »
请参阅下面的更多示例。
这个$props
object 表示组件中声明的 props 以及当前值。
Vue 中的 Props 是一种将值作为属性传递给子组件的方法。请参阅 Vue 教程页面了解 Pros。
这个$props
object 可用于将 props 进一步向下传递到下一个子组件(请参见下面的示例 1),或者用于基于 prop 设置计算属性(下面的示例 2)。
这个$props
对象是只读的。
使用$props
对象将 props 传递给下一个子组件。
<template>
<div>
<h3>InfoBox.vue</h3>
<p>This is the $props object that is received from App.vue and passed down to the next child component:</p>
<pre>{{ this.$props }}</pre>
<grand-child v-bind="$props" />
</div>
</template>
<script>
export default {
props: [
'bagOwner',
'bagWeight'
]
}
</script>
<style scoped>
div {
border: solid black 1px;
padding: 10px;
margin-top: 20px;
max-width: 370px;
}
</style>
运行示例 »
使用$props
计算属性中的对象,用于根据袋子的重量创建反馈消息。
<template>
<div>
<h3>InfoBox.vue</h3>
<p>The $props object is used in a computed value to create a message based on the weight of the bag:</p>
<span>{{ this.bagWeightStatus }}</span>
</div>
</template>
<script>
export default {
props: [
'bagWeight'
],
computed: {
bagWeightStatus() {
if(this.$props.bagWeight>10) {
return 'Puh, this bag is heavy!'
}
else {
return 'This bag is not so heavy.'
}
}
}
}
</script>
<style scoped>
div {
border: solid black 1px;
padding: 10px;
max-width: 350px;
margin-top: 20px;
}
span {
background-color: lightgreen;
padding: 5px 10px;
font-weight: bold;
}
</style>
运行示例 »
Vue教程:Vue 组件
Vue教程:Vue 计算属性
Vue教程:Vue 道具
Vue教程:Vue v-bind 指令
截取页面反馈部分,让我们更快修复内容!也可以直接跳过填写反馈内容!