我有以下代码未按预期返回输出。我知道.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>;
};
答案 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>
);