使用currying函数实现prop-type验证

时间:2017-12-06 16:33:40

标签: javascript reactjs react-proptypes

我对React比较新,遇到了一个问题,我无法验证从curried函数返回的组件上的props。

我已经尝试在“List”和“Wrapped-Component”上验证道具类型,但我仍然没有取得任何成功。我将如何在此特定实例中验证“数据”道具?

import React from "react";
import PropTypes from "prop-types";

const styles = {
  listStyles: {
    display: "flex",
    flexDirection: "row",
    flexWrap: "wrap",
    listStyle: "none",
  },
};

const List = WrappedComponent => ({ data }) => (
  <ul style={styles.listStyles}>
    {data &&
      data.map(item => (
        <div>
          <WrappedComponent {...item} />
        </div>
      ))}
  </ul>
);

List.propTypes = {
  data: PropTypes.array.isRequired,
};

export default List;

1 个答案:

答案 0 :(得分:1)

您将propTypes添加到外部函数而不是组件本身。

function testingTesting() {
    while (document.getElementsByTagName('LI').length > 0) {
        document.getElementById('skillList').removeChild(document.getElementsByTagName('LI')[0]);
    }   
}