Vue props实现父组件给子组件传递数据

Vue中的配置项Props能让组件接收外部传递过来的数据。

一、传递数据

在要传递的组件标签中配置传递信息:

属性名 = "属性值"

注意:如果传递的属性值是一个表达式,要使用:属性名="属性值" 的形式。

二、接收数据

在目标组件中配置props进行数据接收:

方式一:直接接收

注意:这里的属性名和上面传递数据时配置的属性名要相同

props:["属性1", "属性2"]

方式二:限制类型

可以通过限制类型的方式限制传递过来的数据类型,放置数据出错:

props:{ 属性1:类型, 属性2:类型 }

方式三:所有配置项

完整写法中我们可以对每一个接收的属性再进行单独的配置:

props:{ 属性1:{ // 配置项 }, 属性2: { // 配置项 } }

有如下配置项:

type // 属性的数据类型

required // 该属性是否为必填项

default // 若未传该属性,设置默认值

三、注意事项

Vue规定我们通过props接收过来的属性不能够修改。

如果我修改,就会进行控制台报错:

那我们如果真的想要对接收过来的数据进行修改该怎么办呢?

我们可以配置两份数据,一份是props接收过来的数据,一份是组件中data的数据,data中的数据用于修改。

因为props的优先级比data高,所以我们能在data中收到props中的数据:

相关推荐
badhope5 小时前
Mobile-Skills:移动端技能可视化的创新实践
开发语言·人工智能·git·智能手机·github
码云数智-园园6 小时前
微服务架构下的分布式事务:在一致性与可用性之间寻找平衡
开发语言
hpoenixf6 小时前
2026 年前端面试问什么
前端·面试
还是大剑师兰特6 小时前
Vue3 中的 defineExpose 完全指南
前端·javascript·vue.js
C++ 老炮儿的技术栈6 小时前
volatile使用场景
linux·服务器·c语言·开发语言·c++
hz_zhangrl6 小时前
CCF-GESP 等级考试 2026年3月认证C++一级真题解析
开发语言·c++·gesp·gesp2026年3月·gespc++一级
泯泷6 小时前
阶段一:从 0 看懂 JSVMP 架构,先在脑子里搭出一台最小 JSVM
前端·javascript·架构
Liu628886 小时前
C++中的工厂模式高级应用
开发语言·c++·算法
IT猿手6 小时前
基于控制障碍函数的多无人机编队动态避障控制方法研究,MATLAB代码
开发语言·matlab·无人机·openclaw·多无人机动态避障路径规划·无人机编队
AI科技星7 小时前
全尺度角速度统一:基于 v ≡ c 的纯推导与验证
c语言·开发语言·人工智能·opencv·算法·机器学习·数据挖掘