Object.entries()。map()不返回输出

时间:2019-04-12 17:12:39

标签: javascript reactjs

我有以下代码未按预期返回输出。我知道.forEach()不会产生任何输出,但是据我所知.map()会产生。关于我哪里出了问题有什么想法吗?

function getErrorMessages(data) {
  if (data.validation !== undefined) {
    Object.entries(data.validation).map(item => {
      return (
        <div key={item[0]} className="error">
          {item[0]} {item[1]}
        </div>
      );
    });
  }
  if (data.invalid !== undefined) {
    Object.entries(data.invalid).map(item => {
      return (
        <div key={item[0]} className="error">
          {item[0]} {item[1]}
        </div>
      );
    });
  }
}

const ErrorOutput = ({ errorInfo }) => {
  return <div className="error-output">{getErrorMessages(errorInfo)}</div>;
};

1 个答案:

答案 0 :(得分:0)

我认为您只是缺少为映射对象设置变量

const theMappedObjects = Object.entries(data.validation).map(item => {
        return (
            <div key={item[0]} className='error'>
                {item[0]} {item[1]}
            </div>
        );

return Object.entries(data.validation).map(item => {
            return (
                <div key={item[0]} className='error'>
                    {item[0]} {item[1]}
                </div>
            );