在 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 的代码,而无需显式地导出任何东西。这大大简化了组件的编写过程。

相关推荐
hlyling31 分钟前
一键高效处理,批量缩放PNG图片,按比例轻松调整,高效工作从此开始!
javascript·python·c#·objective-c·batch·symfony
用户4099322502121 小时前
Nuxt框架中内置组件详解及使用指南(三)
前端·vue.js·nuxt.js
化作繁星1 小时前
vue3项目图片压缩+rem+自动重启等plugin使用与打包配置
前端·vue·vite
u0104058362 小时前
构建可扩展的Java Web应用架构
java·前端·架构
swimxu2 小时前
npm 淘宝镜像证书过期,错误信息 Could not retrieve https://npm.taobao.org/mirrors/node/latest
前端·npm·node.js
qq_332394202 小时前
pnpm的坑
前端·vue·pnpm
雾岛听风来2 小时前
前端开发 如何高效落地 Design Token
前端
不如吃茶去2 小时前
一文搞懂React Hooks闭包问题
前端·javascript·react.js
冯宝宝^2 小时前
图书管理系统
服务器·数据库·vue.js·spring boot·后端
alwn2 小时前
新知识get,vue3是如何实现在style中使用响应式变量?
前端