var xxx = React.createClass({
? ?//調(diào)試輸出既穆,jsx自動(dòng)設(shè)置炬称,調(diào)試時(shí)顯示的組件名
? ?displayName: "",
? ?//mixin屬性是一個(gè)數(shù)組,通過該數(shù)組可以共享一些復(fù)雜組件間的共用功能赞厕。
? ?mixins: [],
? ?propTypes: {
? ? ? ? // 驗(yàn)證布爾值
? ? ? ?optionalBool: React.PropTypes.bool,
? ? ? ?// 驗(yàn)證是一個(gè)函數(shù)
? ? ? ?optionalFunc: React.PropTypes.func,
? ? ? ?// 驗(yàn)證是數(shù)字
? ? ? ?optionalNumber: React.PropTypes.number,
? ? ? ? // 自定義驗(yàn)證器慷暂,驗(yàn)證失敗需要返回一個(gè) Error 對(duì)象。不要直接
? ? ? ?// 使用 `console.warn` 或拋異常芹关,因?yàn)檫@樣 `oneOfType` 會(huì)失效续挟。
? ? ? ?customProp: funciton(props, propName, componentName) {
? ? ? ? ? ? ? //自定義的驗(yàn)證方法
? ? ? ? ? ? ?}
? ? },
? ?//statics對(duì)象使你可以定義一些靜態(tài)方法,這些靜態(tài)方法可以直接在組件上調(diào)用
? ?statics: {},
? ?//定義組件的參數(shù)-生命周期
? ?//創(chuàng)建期
? ?getDefaultProps: function(){},
? ?//創(chuàng)建期,在組件掛載前(即:創(chuàng)建期)調(diào)用一次侥衬,其返回值將做為this.state的初始值
? ?//設(shè)置props值诗祸,不可使用props,處于組件共享狀態(tài)
? ?getInitialState: function(){},
? ?//創(chuàng)建期轴总,會(huì)在組件初始化(渲染完成)后立即調(diào)用一次
? ?//一般會(huì)使用this.getDOMNode()直颅,獲取渲染原始DOM對(duì)象
? ?componentWillMount: function(){},
? ?//存在期,當(dāng)組件感知到props屬性改變會(huì)調(diào)用此方法怀樟。render()方法將會(huì)在其后調(diào)用际乘,
? ?//這時(shí)我們可以通 過this.setState()來阻止組件的再次渲染
? ? componentWillReceiveProps: function(nextProps){},
? ? //存在期,在組件收到新的props或state漂佩。在這個(gè)方法中脖含,我們可以訪問組件的props和state屬性
? ? //通過這兩個(gè)屬性可以確認(rèn)組件是否需要更新,如果不需要更新投蝉,則返回false养葵,則其后的方法將 ? ? ? ?//不會(huì)在執(zhí)行
? ? shouldComponentUpdate: function(nextProps, nextState){},
? ? //存在期,會(huì)在收到新的props或state后調(diào)用
? ? componentWillUpdate: function(nextProps, nextState){},
? ?//存在期瘩缆,會(huì)在組件重新渲染后立即被調(diào)用关拒,當(dāng)我們需要在組件重新渲染后操作DOM則需要使用 ? ? //這個(gè)方法
? ? componentDidUpdate: function(){},
? ? //銷毀&清理期,組件銷毀&清理期唯一調(diào)用的方法
? ? componentWillUnmount: function(){},
? ? //渲染組件庸娱,其返回值是一個(gè)單子級(jí)的組件
? ? render: function() {
? ? ? ? ?return(
? ? ? ? ? ? ? //null or flase着绊,不返回任何東西
? ? ? ? ? ?)
? ? }
});