0.0.2 • Published 4 years ago
vprop-types v0.0.2
Friendly vue.js props helps methods which more readable.
PS code extract from ant-design repos :), also i found repo do this in react prop-types
use props native way in vue.js
props: {
name: {
type: String,
default: 'foo'
},
items:{
type: Array,
default: ['foo','bar']
}
}
It's ok all is working but if vue component have many props and you will define more redundancy code.
props: {
name: {
type: String,
default: 'foo'
},
items:{
type: Array,
default: ['foo','bar']
},
items1:{
type: Array,
default: ['foo','bar']
}
items2:{
type: Array,
default: ['foo','bar']
}
items3:{
type: Array,
default: ['foo','bar']
}
}
Emmm looks a little bit more redundancy.
What vprop-types
do
yarn add vprop-types
import PropsType from 'vprop-types'
props: {
name: PropsType.string.def('foo'),
items: PropsType.array.def(['foo','bar']),
items1: PropsType.array.def(['foo','bar']),
items2: PropsType.array.def(['foo','bar']),
items3: PropsType.array.def(['foo','bar']),
kind: PropsType.oneOf(['foo','bar']).def('foo')
}
//
Also you can set required to props
props:{
name: PropsType.string.isRequired
}
Looks more readable isn't it.
More helper methods
PropsType.bool
PropsType.array
PropsType.number
more info you can found vprop-type code.