Vue:props

props

props和data都是当前组件实例的属性。但区别在于:

  1. props的值是父组件来赋予的,且原则上不能修改赋值后的值;data的数据可以预先就赋值好也可以不赋值,后期可以任意修改
  2. props属性的解析顺序大于data,因此在data中是可以使用props的数据的,如下
		name:'Student',
		data() {
			console.log(this)
			return {
				msg:'我是一个尚硅谷的学生',
				myAge:this.age
			}
		},
		props:{
			name:{
				type:String, //name的类型是字符串
				required:true, //name是必要的
			},
			age:{
				type:Number,
				default:99 //默认值
			},
			sex:{
				type:String,
				required:true
			}
		}
  1. props和data不要重复定义相同的属性名;比如props有个name属性,data中也有个name属性,这样是不被允许的。

props的使用

  1. 首先要在子组件中进行props定义,有3种定义方式:

方式1

props:['name','age','sex'] 

方式2

		props:{
			name:String,
			age:Number,
			sex:String
		}

方式3

props:{
			name:{
				type:String, //name的类型是字符串
				required:true, //name是必要的
			},
			age:{
				type:Number,
				default:99 //默认值
			},
			sex:{
				type:String,
				required:true
			}
		}

总结:以上3种都有人用,没有说特别推荐哪种

  1. 在父组件中进行使用:
<template>
	<div>
		<Student :name="李四" :sex="女" :age="18"/>
	</div>
</template>
posted @   爱编程DE文兄  阅读(161)  评论(0编辑  收藏  举报
相关博文:
阅读排行:
· TypeScript + Deepseek 打造卜卦网站:技术与玄学的结合
· Manus的开源复刻OpenManus初探
· AI 智能体引爆开源社区「GitHub 热点速览」
· 从HTTP原因短语缺失研究HTTP/2和HTTP/3的设计差异
· 三行代码完成国际化适配,妙~啊~
历史上的今天:
2020-07-20 e3商城_day02
点击右上角即可分享
微信分享提示