在React中为函数prop提供默认值

时间:2015-09-25 14:30:03

标签: reactjs

处理可选React.PropType.func属性的最佳方法是什么?

我应该为它提供默认的noop(如果是,那么最好的方法是什么)或者我应该检查是否定义了道具?

propTypes: {
    onClick: React.PropTypes.func
},

someMethod: function() {
    if (this.props.onClick) {
       this.props.onClick();
    }
}

2 个答案:

答案 0 :(得分:3)

React有getDefaultProps。然后你可以调用onClick而不会出错。

getDefaultProps: function() {
    return {
        onClick: function() {}
    };
}

答案 1 :(得分:0)

您可以使用typeof

if (typeof this.props.onClick === 'function'){
    //...
}