这篇文章主要介绍“Vue组件怎么设置Props”的相关知识,小编通过实际案例向大家展示操作过程,操作方法简单快捷,实用性强,希望这篇“Vue组件怎么设置Props”文章能帮助大家解决问题。
在 Vue 中构建组件通常需要定义一些属性,以使组件可以更好复用,在这种情况下会使用 props 来自定义数据来传递数据。接下来以一个简单的组件来介绍如何使用组件 props 。
<CrayonAlert title="友情提示" description="请输入真实的信息" />
如上面代码所示,组件定义两个属性 title 和 description,组件代码如下:
<template>
<div>
<h3>{{ title }}</h3>
<p>{{ description }}</p>
</div>
</template>
<script>
export default {
name: "CrayonAlert",
props: {
title: {
type: String,
},
description: {
type: String,
},
},
};
</script>
props 不仅限于 String ,还可以是以下类型:
Object
Array
Symbol
Function
Number
String
Date
Boolean
在上面代码中,当组件没有传入相应的属性值的情况下,会显示 undefined 或者在模板HTML没有任何文本,这个时候可以考虑定义一个默认值:
export default {
name: "CrayonAlert",
props: {
title: {
type: String,
default: "提示",
},
description: {
type: String,
default: "描述",
},
},
};
设置好默认值后,在没有传入任何参数值的时候,会显示默认值。这种方式在 Vue2 比较常用。
跟 Form 数据一样,组件属性值也可以对其进行验证,如下:
export default {
name: "CrayonAlert",
props: {
title: {
type: String,
validator(value) {
return value !== "";
},
},
description: {
type: String,
validator(value) {
return value !== "";
},
},
},
};
在 Vue3 中,引入了一种称为 Composition API 的新方法。在 Composition API 中,定义 props 使用 defineProps 函数。定义没有默认值的属性如下所示:
import { defineProps } from "vue";
const props = defineProps({
title: {
type: String,
},
description: {
type: String,
},
});
设置默认值和在Vue2 中有点类似,如下:
import { defineProps } from "vue";
const props = defineProps({
title: {
type: String,
default: "提示",
},
description: {
type: String,
default: "描述",
},
});
为了避免在属性上设置默认值,可以通过使用 required 字段来设置属性为必须项。定义代码如下:
import { defineProps } from "vue";
const props = defineProps({
title: {
type: String,
default: "提示",
required: true,
},
description: {
type: String,
default: "描述",
required: true,
},
});
关于“Vue组件怎么设置Props”的内容就介绍到这里了,感谢大家的阅读。如果想了解更多行业相关的知识,可以关注亿速云行业资讯频道,小编每天都会为大家更新不同的知识点。
亿速云「云服务器」,即开即用、新一代英特尔至强铂金CPU、三副本存储NVMe SSD云盘,价格低至29元/月。点击查看>>
免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。