javascript - React 无状态功能组件应返回 null 但收到错误

标签 javascript reactjs

我有一个简单的组件来显示无效的表单条目,显然它应该只在所述表单条目无效时呈现一条消息。据我所知,我正确地使用了条件返回语句,但我仍然遇到错误。

组件如下:

从“ react ”中导入 react ; 从“prop-types”导入 PropTypes;

function FormErrors ({formErrors}) {
    Object.keys({formErrors}).map((field, i) => {
        if ({formErrors}[field].length > 0) {
            return (
                <p key={i}>{field} {formErrors[field]}</p>
            )
        } else {
            return null;
        }
    })
}

export default FormErrors;

传入的 Prop :

formErrors: {email: '', password: ''};

我收到的错误消息:

不变违规:FormErrors(...):渲染没有返回任何内容。这通常意味着缺少返回语句。或者,要不渲染任何内容,请返回 null。

最佳答案

Nothing was returned from render.

您缺少一个返回

function FormErrors ({formErrors}) {
    return Object.keys({formErrors}).map((field, i) => {
    // ^^ add this return
        if ({formErrors}[field].length > 0) {
            return (
                <p key={i}>{field} {formErrors[field]}</p>
            )
        } else {
            return null;
        }
    })
}

关于javascript - React 无状态功能组件应返回 null 但收到错误,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/47025065/

相关文章:

javascript - 如何使用用户定义的相等函数在 Javascript 中创建一组用户定义的对象?

javascript - JQuery:根据条款是否同意切换提交按钮

javascript - 如何使用 react-bootstrap table-2 将列中的值显示为链接?

json - 世博会中的动态本地镜像?

javascript - react ajax请求

javascript - FullCalendar (v2) 在每周 View 的插槽顶部显示弹出窗口

javascript - 有条件地在 Angular Directive(指令)中加载模板

javascript - 如何使用 AngularJS 使用 Bootstrap 警报

css - 仅当我们单击模态内容外部时才关闭叠加层

javascript - native react : How to stop child component rerendering on state change?