功能组件内部的propTypes呢?

时间:2020-05-25 18:52:31

标签: javascript reactjs react-proptypes

为功能组件指定propTypes的标准方法是在函数主体之后:

const One = ({text}) => {
    return <div>One says {text}</div>
};

One.propTypes = {
    text: PropTypes.string.isRequired
};

export default One;

我在某处看到了一种替代方法,将propTypes属性写在函数主体中:

const One = ({text}) => {
    One.propTypes = {
       text: PropTypes.string.isRequired
    };

    return <div>One says {text}</div>
};

export default One;

我实际上倾向于第二种,特别是在组件有很多行的情况下,以便propTypes(合同的一部分)在视觉上接近声明。 但是这种方式几乎没有提到,这让我感到奇怪:

是有效的ES6(将属性分配给内部的箭头功能 身体)?我本来不是,因为 那时变量One的函数尚未发生... 但这似乎可行-下面的示例。

它有什么缺点吗?

const mifunc = (x,y) => {
 mifunc.prop1 = 'hi'; 
 return x+y;
}

console.log(mifunc(2,3));
console.log(mifunc.prop1);

0 个答案:

没有答案