组件传递props校验

news/2025/2/27 10:15:06

注意:prop是只读的!不可以修改父组件的数据。

可以检验传过来的内容是否类型没问题。

App.vue

<template>
    <div>
        <!-- <parentDemo/> -->
         <componentA/>
    </div>

</template>
<script>
import ComponentA from './components/componentA.vue';

// import parentDemo from './components/parentDemo.vue';
export default{
    components:{
        // parentDemo
        ComponentA
    }
}
</script>
<style>

</style>

A.vue

<template>
    <div>
        <h3>componentA</h3>
        <componentB :title="titles" />//不传name
    </div>
</template>
<script>
import ComponentB from './componentB.vue';


export default{
    data(){
        return{
            titles:'sss',
            names:['小明','画画']
        }
    },
    components:{
        ComponentB
    }
}
</script>

B.vue

<template>
    <div>
        <h3>componentB</h3>
        <p>{{ title }}</p>
        <!-- A组件没有传age的值 -->
        <p>{{ age }}</p>
        <p v-for="(iteam,index) of names " :key='index'>{{ iteam }}</p>
    </div>
    
</template>
<script>
export default{
    data(){
        return{
            
        }
    },
    props:{
        title:{
            // 接受多种类型
            type:[Number,String,Array,Object],
            // 必选项,若不传则报警告。
            required:true
        },
        age:{
            // 没传age的值
            type:Number,
            // 没传显示默认值为0,传了就显示传的值
            default:0
        },
        // 数字和字符串可以直接default,但是如果是数组和对象,必须通过函数返回函数默认值
        names:{
            type:Array,
            // 数组默认返回函数
            default(){
                return["空"]
            }
        }
    }
}
</script>


http://www.niftyadmin.cn/n/5869936.html

相关文章

港科大提出开放全曲音乐生成基础模型YuE:可将歌词转换成完整歌曲

YuE是港科大提出的一个开源的音乐生成基础模型&#xff0c;专为音乐生成而设计&#xff0c;专门用于将歌词转换成完整的歌曲&#xff08;lyrics2song&#xff09;。它可以生成一首完整的歌曲&#xff0c;时长几分钟&#xff0c;包括朗朗上口的声乐曲目和伴奏曲目。YuE 能够模拟…

【Java项目】基于Spring Boot的旅游管理系统

【Java项目】基于Spring Boot的旅游管理系统 技术简介&#xff1a;采用Java技术、Spring Boot框架、MySQL数据库等实现。 系统简介&#xff1a;旅游管理系统是一个基于Web的在线平台&#xff0c;主要分为前台和后台两大功能模块。前台功能模块包括&#xff08;1&#xff09;首…

35. Spring Boot 2.1.3.RELEASE 应用监控【监控信息可视化】

在 Spring Boot 2.1.3.RELEASE 中实现监控信息可视化可以通过多种方式&#xff0c;下面为你详细介绍使用 Spring Boot Actuator 结合 Grafana 和 Prometheus 以及使用 Spring Boot Admin 这两种常见方法。 方法一&#xff1a;Spring Boot Actuator Grafana Prometheus 1. 添…

TCP/IP 5层协议簇:数据链路层(交换机工作原理)

目录 1. 数据链路层 2. 帧 3. 工作在数据链路层的设备 4. 交换机工作原理 1. 数据链路层 数据链路层&#xff08;2层Data Link Layer&#xff09;&#xff1a;传输单元是帧、这层工作的主要设备二层交换机、网卡 2. 帧 帧的结构如下&#xff1a;帧最大1518字节 如下&…

前端项目配置初始化

creat-vue 安装 https://cn.vuejs.org/guide/quick-start.html 官网复制npm安装语句 cmd窗口创建文件夹 npm create vue3.12.2安装webstorm启动vue项目 https://www.jetbrains.com/webstorm/download/other.html 2024.3.2.1 安装依赖 下载包node_modules package 运行服…

鸿蒙开发第4篇__关于在鸿蒙应用中使用Java语言进行设计

本博文很重要 HarmonyOS从 API8 开始不再支持使用Java作为开发语言&#xff0c;未来的新功能将在ArkTS中实现. API 8对应的是HarmonyOS 3.0.0版本。请看下图&#xff1a; 因此&#xff0c; 读者如果看到类似《鸿蒙应用程序开发》(2021年版本 清华大学出版计)书 还使用Java语言…

[深度学习]基于C++和onnxruntime部署yolov12的onnx模型

基于C和ONNX Runtime部署YOLOv12的ONNX模型&#xff0c;可以遵循以下步骤&#xff1a; 准备环境&#xff1a;首先&#xff0c;确保已经下载后指定版本opencv和onnruntime的C库。 模型转换&#xff1a; 安装好yolov12环境并将YOLOv12模型转换为ONNX格式。这通常涉及使用深度学习…

在zotero里部署papaerschat插件,以接入现有大模型

papaerschat插件里集成了openAI的GPT3.5、gpt-4o、gpt-mini大模型以及Claude3、Gemini、Deepseek等大模型。通过接入这些大模型可以辅助我们阅读论文。以部署方式如下&#xff1a; 1.下载zotero的插件市场&#xff0c;用以管理zotero里的插件。下载地址&#xff1a; https://…