Vue子组件prop类型和默认值


Vue子组件prop类型和默认值

1、设置prop的数据类型有什么好处?

细致的 prop 定义有两个好处:

a、它们写明了组件的 API,所以很容易看懂组件的用法;

b、在开发环境下,如果向一个组件提供格式不正确的 prop,Vue 将会告警,以帮助你捕获潜在的错误来源。

例如:

props:['status'],

#good:

props:{
    status:String
}
 

#better:

// 更好的做法!
props: {
  status: {
    type: String,
    required: true,
    validator: function (value) {
      return [
        'syncing',
        'synced',
        'version-conflict',
        'error'
      ].indexOf(value) !== -1
    }
  }
}

###注意 props 会在组件实例创建之前进行校验,所以在 default 或 validator 函数里,诸如 data、computed 或 methods 等实例属性还无法使用。

2、数据类型为Array、Function、Object时的写法

//接收的数据类型为数组
arr: {
type: Array,
default: () => {
return []
}
},

//接收的数据类型为函数
fun: {
type: Function,
default: () => () => {}
},

//接收的数据类型为对象
obj: {
type: Object,
default: () => ({})  //这里是注意是括弧,必须是括弧。
}

 


免责声明!

本站转载的文章为个人学习借鉴使用,本站对版权不负任何法律责任。如果侵犯了您的隐私权益,请联系本站邮箱yoyou2525@163.com删除。



 
粤ICP备18138465号  © 2018-2025 CODEPRJ.COM