props 组件传值

本文介绍了Vue中父子组件间传递props的方式,包括对象形式和字符串形式,并讲解了如何设置props验证、默认值以及非prop属性的处理。在属性传递过程中,如果子组件不接收某个prop,该值会默认附加到最外层DOM,但通过设置`inheritAttrs: false`可以避免这一行为。同时,`this.$attrs`可以在子组件的mounted阶段获取所有传递的props。
摘要由CSDN通过智能技术生成

props:[“message”]
或者props:{
message:{
type:String,
required:true,
validator(value){ //效验传递过来的值,true为通过
return value <100
}
default:’’,//default也可以是个函数default(){return xxx;} 默认值就是函数返回的值

}

}

当要传递的props值很多时

子组件demo
props:{
   a:{
      type:Number
    },
    b:{
      type:String
    },
    c:{
      type:Boolean
    }
  }
 }
父组件
data() {
  return {
    params:{
      a:1,b:"ok",c:true
    }
 }
 <div id="root">
    <demo v-bind="params"></demo>
  </div>

属性传的时候,使用content-abc这种命名,接的时候,使用contentAbc 命名

Non-prop:一般用于给子组件添加class或style样式
当父组件向子组件传值,但是子组件不接收的情况下,就会把父组件传过来的内容放在子组件的最外层dom上,但是只有子组件加了
inheritAttrs:false,就不会有了

子组件在mounted(渲染完成之后)中通过this.$attrs可以获取到父组件传递过来的所有props

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值