vue3 definProps

在 Vue 3 中,defineProps 是一个在 <script setup> 语法糖中使用的函数,用于声明组件接收的 props。这个语法糖简化了组件的编写,使得我们可以在更紧凑和直观的方式中定义和使用 props。

使用 defineProps,你可以定义组件期望接收的属性(props),并为其指定类型、默认值等。这样,Vue 可以在运行时对传入的 props 进行验证,以确保它们符合预期的格式和类型。

使用示例

假设你有一个 MyComponent 组件,它接受一个名为 title 的字符串类型的 props 和一个名为 isActive 的布尔类型的 props。你可以这样使用 defineProps 来定义它们:

 
vue<template>
<div>
<h1>{{ title }}</h1>
<button :disabled="!isActive">点击我</button>
</div>
</template>

<script setup>
import { defineProps } from 'vue'

const props = defineProps({
title: {
type: String,
required: true,
default: '默认标题'
},
isActive: {
type: Boolean,
default: false
}
})
</script>

在上面的例子中,我们首先从 'vue' 中导入了 defineProps 函数。然后,我们使用 defineProps 定义了一个对象,该对象描述了 title 和 isActive 这两个 props 的类型、是否必需以及默认值。最后,我们将定义好的 props 对象赋值给了常量 props(尽管在 <script setup> 中我们实际上可以直接使用这些 props,而不需要将它们赋值给一个变量)。

在模板中,我们可以直接使用这些 props,就像使用组件内部的响应式数据一样。Vue 会自动处理 props 的响应性,并在父组件更新这些 props 时更新组件的状态。

注意,<script setup> 是 Vue 3 中引入的一种新的组件语法,它允许你在同一个 <script> 标签中同时编写组件的逻辑和模板,而无需显式导出组件对象。这使得组件的代码更加简洁和易于维护。在使用 <script setup> 时,你不需要显式地导出 props,因为它们会自动暴露给模板和其他 <script setup> 中的代码

  • 16
    点赞
  • 5
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

一杯梅子酱

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值