Se React.PropTypes.shape
não lhe der o nível de verificação de tipo desejado, consulte tcomb-react .
Ele fornece uma toPropTypes()
função que permite validar um esquema definido com a biblioteca tcomb , usando o suporte do React para definir validadores personalizadospropTypes
, executando validações usando tcomb-validation .
Exemplo básico de seus documentos :
// define the component props
var MyProps = struct({
foo: Num,
bar: subtype(Str, function (s) { return s.length <= 3; }, 'Bar')
});
// a simple component
var MyComponent = React.createClass({
propTypes: toPropTypes(MyProps), // <--- !
render: function () {
return (
<div>
<div>Foo is: {this.props.foo}</div>
<div>Bar is: {this.props.bar}</div>
</div>
);
}
});