2015-08-20 19 views
0

我很想访问一个类的propTypes,例如如果给出实例,我可以检查反应组件类的proptypes吗?

var Button = React.createClass({ 
    propTypes: { 
    text: React.PropTypes.string, 
    href: React.PropTypes.string 
    }, 
    ... 
}) 

... 

var ButtonPropTypes = Button.propTypes 

我希望看到的东西沿着

{ text: function(){...}, href: function(){...} } 

线而是我得到undefined。我做错了什么,以及我如何得到这些proptypes?

回答

3

您应该能够像您在代码中一样静态访问proptypes。我把一个实例上的jsfiddle,你可以应该能够看到正在打印的proptypes在控制台(他们是函数)

var Hello = React.createClass({ 
    getDefaultProps: function() { 
     return { 
      testing: 'default value' 
     }; 
    }, 
    propTypes: { 
     testing: React.PropTypes.string 
    }, 
    render: function() { 
     return (
      <div>   
       <div>{this.props.name}</div> 
      </div> 
     ) 
    } 
}); 

React.render(<Hello name="World" />, document.getElementById('container')); 

console.log(Hello.propTypes) 

https://jsfiddle.net/fj7ax0qr/

+0

没错!我愚蠢地试图访问没有设置任何proptypes的类的proptypes!谢谢。 :d – Bacon

相关问题