当前位置: 首页 > news >正文

前端流行框架Vue3教程:14. 组件传递Props效验

(4) 组件传递Props效验

Vue组件可以更细致地声明对传入的props的校验要求

ComponentA.vue

<script>
import ComponentB from './ComponentB.vue';
export default {components: {ComponentB},data() {return {title: '标题'}}
}
</script>
<template><h3>ComponentA </h3><ComponentB :title="title"/>
</template>

ComponentB.vue

<script>
export default{data(){return{}},props:{title:{// 效验类型,可以为很多类型type:[String,Number]}}
}
</script>
<template>
<h3>ComponentB</h3>
<p>{{ title }}</p>
</template>

默认值

假设ComponentA.vue没有传入age的值:

ComponentB.vue

<script>
export default{data(){return{}},props:{title:{type:[String,Number],},age:{type:Number,default:18},// 数字和字符串可以直接default,但是如果是数组和对象,必须通过工厂函数返回默认值names:{type:Array,default(){return ['张三','李四']}}}
}
</script>
<template>
<h3>ComponentB</h3>
<p>{{ title }}</p>
<p>{{ age }}</p>
<ul><li v-for="(item,index) in names" :key="index">{{ item }}</li>
</ul>
</template>

在这里插入图片描述

必选项

部分代码:

text:{type:String,required:true  // 必选项}

我们没有传text的话,就会有个提示

在这里插入图片描述

温馨提示
警告!prop是只读的!

比如我们用button添加个事件,是不允许修改父元素传递过来的数据

相关文章:

  • Java工具学习
  • AI教你学VUE——Gemini版
  • 洛谷---P1629 邮递员送信
  • JavaScript学习教程,从入门到精通,jQuery 单击页面显示自定义动画、元素删除操作、随机抽奖、随机选图并放大语法知识点(37)
  • 理清缓存穿透、缓存击穿、缓存雪崩、缓存不一致的本质与解决方案
  • iro.js 非常方便好用的 Web 颜色选择器
  • 【Redis篇】linux 7.6安装单机Redis7.0(参数优化详解)
  • 【容器化】Docker容器技术入门基础教程
  • 端口隔离基本配置
  • 如何保障服务器租用中的数据安全?
  • ‌2.4GHz无线通信天线布局与优化方法
  • 基于C++的IOT网关和平台7:github项目ctGateway设备协议开发指南
  • AutoDL+SSH在vscode中远程使用GPU训练深度学习模型
  • 论文AI率降低 教程(包过)
  • 分布式、高并发-Day03
  • 人工智能与智能合约:如何用AI优化区块链技术中的合约执行?
  • Paramiko 性能优化详解
  • 生成了一个AI算法
  • 华为设备端口隔离
  • 【Azure Redis】Redis导入备份文件(RDB)失败的原因
  • 公元1057年:千年龙虎榜到底有多厉害?
  • 中方对中美就关税谈判的立场发生变化?外交部:中方立场没有任何改变
  • 潘功胜:将下调个人住房公积金贷款利率0.25个百分点
  • 线下无理由退货怎样操作?线上线下监管有何不同?市场监管总局回应
  • 机器人助力、入境游、演出引流:假期纳客千万人次城市有高招
  • 新闻分析:电影关税能“让好莱坞再次伟大”?