在 Vue 3 中,props 是用于父组件向子组件传递数据的一种机制

以下是如何在 Vue 3 的 Composition API 中使用 props 的步骤:

  1. 定义组件并声明 props

首先,你需要在子组件中声明 props。这可以通过在组件的 <script> 标签内使用 defineProps 函数来完成。

html 复制代码
<template>  
  <div>  
    {{ message }}  
  </div>  
</template>  
  
<script setup>  
import { defineProps } from 'vue';  
  
const props = defineProps({  
  message: {  
    type: String,  
    required: true,  
    default: 'Hello from props!'  
  }  
});  
</script>

在这个例子中,我们定义了一个名为 messageprop,并指定了它的类型为 String。我们还设置了 required 属性为 true,表示这个 prop 是必须的,并为其提供了一个默认值 'Hello from props!'

  1. 在父组件中使用子组件并传递 props

接下来,在父组件中,你可以像平常一样使用子组件,并通过属性 (attributes) 的方式传递 props

html 复制代码
<template>  
  <ChildComponent :message="parentMessage" />  
</template>  
  
<script setup>  
import { ref } from 'vue';  
import ChildComponent from './ChildComponent.vue';  
  
const parentMessage = ref('Hello from parent!');  
</script>
  1. 在子组件中使用 props

在子组件的 setup 函数中,通过 defineProps 定义的 props 可以直接作为变量使用。在我们的例子中,message prop 可以在模板中直接通过 {``{ message }} 访问,也可以在 setup 函数内的其他逻辑中使用。

确保你已经安装了 Vue 3,并且你的项目配置正确地支持了 Vue 3 的 Composition API 和 <script setup> 语法。<script setup> 是 Vue 3 的一个新特性,它允许你在 <script> 标签内直接编写 Composition API 的代码,而无需显式地导出任何东西。这大大简化了组件的编写过程。

相关推荐
钛态2 小时前
Vite 中的 CSS 工程化:从 CSS Modules 到 UnoCSS 的渐进式迁移
前端·vue·react·web
Csvn4 小时前
原型链、this 与闭包内存:三座深水区一次打通(含内存泄漏排查实战)
前端·javascript
葡萄城技术团队4 小时前
如何通过 JSON 数据源 / Web API 快速构建轻量级报表(Report)?
前端·json·原型模式
万维易源4 小时前
趣味项目素材|免费脑筋急转弯查询接口实战接入教程
javascript·免费api·脑筋急转弯查询·脑筋急转弯接口
浪兎兎4 小时前
【Java Web】Servlet + JSP 笔记
java·前端·servlet
Patrick_Wilson5 小时前
iOS Safari Clipboard API 权限弹窗问题
前端·ios·safari
OpenTiny社区6 小时前
Naive UI × GenUI SDK:自定义物料库搭建实战
前端·ai编程
kyriewen6 小时前
我拿 4 个真实前端任务试了 GLM-5.3 Flash:代码一遍跑通,账单 4 分钱
前端·程序员·ai编程
IT_陈寒6 小时前
Vue的响应式更新有时候真的不听话
前端·人工智能·后端