浅析子组件自定义属性问题

本文探讨了在Vue开发中,父组件向子组件传递props时的两种常见策略:一是为每个属性单独定义props,二是直接传递整个对象。第一种方式灵活性高,适用于属性名称不一致的情况,但定义较多;第二种方式简洁,适用于对象属性一致的场景,但适配性较弱。通过这两种方式的对比,有助于开发者更好地理解和选择合适的props传递策略。
摘要由CSDN通过智能技术生成

浅析父组件传子组件的props对象问题

问题

  • 最近学习过程中遇到一个有意思的事情,正好之前写项目遇到的事情。学习到了总结一下,下次遇到可以想起来

vue中注册了子组件之后,里面有很多地方要根据后台接口传过来的数据进行渲染,但是每个组件的数据后台都用一个对象包裹起来

分析

  • 第一种方式:根据要传的数据定义每一个props对象,这样写的数据较多,父组件传入的时候也会写很多标签属性
  • 这种方式可以适配多种对象 对象里面的属性名字可以不同,譬如 对象a的标题叫做a_title,对象b的标题叫做b_title我们可以不用管对象内的属性具体名字,直接传入
<script>
	export default {
		props: {
			title: {
				default: '',
				type: String
			},
			pic: {
				default: '',
				type: String
			},
			price: {
				default: 0,
				type: Number
			},
			state: {
				default: true,
				type: Boolean
			}
		}
	}
</script>
  • 第二种方式:直接传入一个整体对象
  • 这种方式适用范围较少适合只渲染同一种对象,对象内的属性名称都是一致的。适配性较差
<script>
	export default {
		props: {
			goods:{
				type: Object,
				default: {}
			}
		}
	}
</script>
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值