React createClass参数详解

var xxx = React.createClass({

   //调试输出,jsx自动设置,调试时显示的组件名

   displayName: "",

   //mixin属性是一个数组,通过该数组可以共享一些复杂组件间的共用功能。

   mixins: [],

   propTypes: {

        // 验证布尔值

       optionalBool: React.PropTypes.bool,

       // 验证是一个函数

       optionalFunc: React.PropTypes.func,

       // 验证是数字

       optionalNumber: React.PropTypes.number,

        // 自定义验证器,验证失败需要返回一个 Error 对象。不要直接

       // 使用 `console.warn` 或抛异常,因为这样 `oneOfType` 会失效。

       customProp: funciton(props, propName, componentName) {

              //自定义的验证方法

             }

    },

   //statics对象使你可以定义一些静态方法,这些静态方法可以直接在组件上调用

   statics: {},

   //定义组件的参数-生命周期

   //创建期

   getDefaultProps: function(){},

   //创建期,在组件挂载前(即:创建期)调用一次,其返回值将做为this.state的初始值

   //设置props值,不可使用props,处于组件共享状态

   getInitialState: function(){},

   //创建期,会在组件初始化(渲染完成)后立即调用一次

   //一般会使用this.getDOMNode(),获取渲染原始DOM对象

   componentWillMount: function(){},

   //存在期,当组件感知到props属性改变会调用此方法。render()方法将会在其后调用,

   //这时我们可以通 过this.setState()来阻止组件的再次渲染

    componentWillReceiveProps: function(nextProps){},

    //存在期,在组件收到新的props或state。在这个方法中,我们可以访问组件的props和state属性

    //通过这两个属性可以确认组件是否需要更新,如果不需要更新,则返回false,则其后的方法将        //不会在执行

    shouldComponentUpdate: function(nextProps, nextState){},

    //存在期,会在收到新的props或state后调用

    componentWillUpdate: function(nextProps, nextState){},

   //存在期,会在组件重新渲染后立即被调用,当我们需要在组件重新渲染后操作DOM则需要使用     //这个方法

    componentDidUpdate: function(){},

    //销毁&清理期,组件销毁&清理期唯一调用的方法

    componentWillUnmount: function(){},

    //渲染组件,其返回值是一个单子级的组件

    render: function() {

         return(

              //null or flase,不返回任何东西

           )

    }

});

你可能感兴趣的:(React createClass参数详解)