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

vue3 Props的使用

Props是什么?

官方地址:Props | Vue.js

在 Vue 中,props 是父组件向子组件传递数据的一种机制。

props 是子组件中定义的自定义属性,父组件通过这些属性向子组件传递数据。

它们是单向数据流的一部分,意味着数据只能从父组件流向子组件,而不能反过来。

定义props

在子组件中,可以通过 props 选项来定义接收的属性。props 可以是数组或对象形式。

子组件 child.vue

在使用 <script setup> 的单文件组件中,props 可以使用 defineProps() 宏来声明:

<script setup>
const props = defineProps(['foo'])
​
console.log(props.foo)
</script>

除了使用字符串数组来声明 props 外,还可以使用对象的形式:

<script setup>
const props = defineProps({
  title: String,
  likes: Number
})
​
console.log(props.foo)
</script>

对于以对象形式声明的每个属性,key 是 prop 的名称,而值则是该 prop 预期类型的构造函数。比如,如果要求一个 prop 的值是 number 类型,则可使用 Number 构造函数作为其声明的值。

对象形式的 props 声明不仅可以一定程度上作为组件的文档,而且如果其他开发者在使用你的组件时传递了错误的类型,也会在浏览器控制台中抛出警告。

监听props 自定义属性

child.vue 子组件

<script setup>
import { ref } from 'vue'
import { watchEffect,watch } from 'vue'
​
//自定义属性
const props = defineProps(['name','age']);
​
​
//监听自定义属性
watch(() => props.name,(newVal,oldVal) => {
    console.log("----监听name---- newVal:" + newVal,"oldVal:" + oldVal);
})
watch(() => props.age,(newVal,oldVal) => {
    console.log("----监听age---- newVal:" + newVal,"oldVal:" + oldVal);
})
​
​
</script>

相关文章:

  • 1-19 .gitignore的作用
  • PAT 甲级 1091 Acute Stroke
  • 网络安全监测探针安装位置 网络安全监测系统
  • ZLMediaKi集群设置
  • Python部署工控安全风险评估系统
  • 字节火山引擎 DeepSeek 接入本地使用
  • mongodb的并发优化
  • 网络安全风险事件排名 网络安全事件划分
  • MobaXterm_Portable_v23.2 免费下载与使用教程(附安卓替代方案)
  • 模型思维 - 领域模型的应用与解析
  • 8.日常英语笔记
  • 【每日八股】MySQL篇(二):事务
  • 文档检索服务平台
  • 23贪心算法
  • 【蓝桥杯单片机】客观题
  • 如何在 macOS 上配置 MySQL 环境变量
  • 【ROS2】第三方库学习:Eigen(线性代数:矩阵、向量)
  • 接雨水的算法
  • Linux nc 命令详解
  • Android Studio2024版本安装环境SDK、Gradle配置
  • 做公司网站哪里好/seo快速排名工具
  • 广告电商怎么做/seo推广费用
  • 县城服务网站如何做/百度指数教程
  • 企业做网站400电话作用/网站优化联系
  • 郑州上海做网站的公司有哪些/企业网站营销实现方式
  • 孟村县做网站/昆明自动seo