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中的数据:

相关推荐
扶苏100228 分钟前
深入理解 Vue 3 的 watchEffect
前端·javascript·vue.js
Riemann~~29 分钟前
C语言嵌入式风格
c语言·开发语言
zmzb01032 小时前
C++课后习题训练记录Day104
开发语言·c++
未来龙皇小蓝2 小时前
RBAC前端架构-05:引入Element-UI及相关逻辑
前端·ui
zmzb01033 小时前
C++课后习题训练记录Day105
开发语言·c++·算法
wjs20243 小时前
Vue3 条件语句
开发语言
_codemonster3 小时前
JavaWeb开发系列(六)JSP基础
java·开发语言
yanlele3 小时前
AI Coding 时代下, 关于你会写代码这件事儿, 还重要吗?
前端·javascript·ai编程
Web打印4 小时前
Phpask(php集成环境)之16 怎样彻底停用一个网站
开发语言·php
打瞌睡的朱尤4 小时前
Vue day9 购物车,项目,vant组件库,vw,路由
前端·javascript·vue.js