在Proptypes中指定isRequired应该到最后?

时间:2017-07-26 11:10:18

标签: reactjs eslint react-proptypes

我有一个简单的组件,我正在使用prop-types包。

验证对象数组,我使用类似:

CoursesPage.propTypes = {
    courses: PropTypes.isRequired.arrayOf(PropTypes.shape({
        title: PropTypes.isRequired.string,
    })),
};

现在,Eslint react / require-default-props给出了courses属性是可选的但没有默认值的错误,但如果isRequired属于arrayOf属性后,错误消失了。

为了使必需的道具,是否需要最后规定isRequired财产?或者它是Eslint react / require-default-prop插件的错误?

1 个答案:

答案 0 :(得分:2)

isRequired应该在数据类型之后 PropTypes.string.isRequired you can read more here

在你的情况下

CoursesPage.propTypes = {
    courses: PropTypes.arrayOf(PropTypes.shape({
        title: PropTypes.string,
    })).isRequired
};