菜单
×
   ❮   
HTML CSS JAVASCRIPT SQL PYTHON JAVA PHP HOW TO W3.CSS C C++ C# BOOTSTRAP REACT MYSQL JQUERY EXCEL XML DJANGO NUMPY PANDAS NODEJS R TYPESCRIPT ANGULAR GIT POSTGRESQL MONGODB ASP AI GO KOTLIN SASS VUE DSA GEN AI SCIPY AWS CYBERSECURITY DATA SCIENCE
     ❯   

Vue 教程

Vue 首页 Vue Intro Vue Directives Vue v-bind Vue v-if Vue v-show Vue v-for Vue Events Vue v-on Vue Methods Vue Event Modifiers Vue Forms Vue v-model Vue CSS Binding Vue Computed Properties Vue Watchers Vue Templates

Scaling Up

Vue 为什么、如何和设置 Vue 第一个 SFC 页面 Vue 组件 Vue Props Vue v-for 组件 Vue $emit() Vue Fallthrough Attributes Vue Scoped Styling Vue 本地组件 Vue Slots Vue v-slot Vue Scoped Slots Vue 动态组件 Vue Teleport Vue HTTP 请求 Vue 模板引用 Vue 生命周期钩子 Vue Provide/Inject Vue 路由 Vue 表单输入 Vue 动画 Vue v-for 动画 Vue 构建 Vue Composition API

Vue Reference

Vue Built-in Attributes Vue Built-in Components Vue Built-in Elements Vue Component Instance Vue Directives Vue Instance Options Vue Lifecycle Hooks

Vue 示例

Vue Examples Vue Exercises Vue Quiz Vue Server Vue Certificate

Vue $props 对象


示例

使用 $props 对象显示接收到的 props。

<template>
  <div>
    <h3>Received Props</h3>
    <p>This is the $props object:</p>
    <pre>{{ this.$props }}</pre>
  </div>
</template>
运行示例 »

更多示例请参见下方。


定义和用法

$props 对象表示组件中声明的 props,以及当前的值。

Vue 中的 Props 是一种将值作为属性传递给子组件的方式。 请参阅 Vue 教程页面的 Props

$props 对象可以用于,例如,将 props 进一步传递给下一个子组件(参见下面的示例 1),或用于设置基于 prop 的计算属性(参见下面的示例 2)。

$props 对象是只读的。


更多示例

示例 1

使用 $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>
运行示例 »

示例 2

在计算属性中使用 $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 Components

Vue 教程:Vue Computed Properties

Vue 教程:Vue Props

Vue 教程:Vue v-bind 指令


×

联系销售

如果您想将 W3Schools 服务用于教育机构、团队或企业,请发送电子邮件给我们
sales@w3schools.com

报告错误

如果您想报告错误,或想提出建议,请发送电子邮件给我们
help@w3schools.com

W3Schools 经过优化,旨在方便学习和培训。示例可能经过简化,以提高阅读和学习体验。教程、参考资料和示例会不断审查,以避免错误,但我们无法保证所有内容的完全正确性。使用 W3Schools 即表示您已阅读并接受我们的使用条款Cookie 和隐私政策

版权所有 1999-2024 Refsnes Data。保留所有权利。W3Schools 由 W3.CSS 提供支持