【问题标题】:Uncaught Invariant Violation: DetailPage.render()未捕获的不变违规:DetailPage.render()
【发布时间】:2016-07-13 06:35:51
【问题描述】:

得到以下错误

未捕获的不变违规:DetailPage.render():有效的 React 必须返回元素(或 null)。您可能返回了未定义的, 数组或其他一些无效对象。

      import React from 'react';
      import DetailPage from './detail-page.jsx';

      RenderPageComponents() {
            debugger
            switch (this.state.consultantListPage) {
                case 'user-list':
                    return (
                        <div>
                            <h1>User List</h1>
                            <ConsultantList
                                ViewDetail={this.ViewDetail.bind(this) }
                                userList={this.state.userList}
                                consultantListPage={this.state.consultantListPage}
                                />
                        </div>);

                case 'user-detail':
                    return (
                         <div>
                           <DetailPage/>
                        </div>
                    );


                default:
                    break;
            }

        }

感谢您对解决此问题的任何帮助

【问题讨论】:

    标签: javascript reactjs


    【解决方案1】:

    在默认步骤中,您必须返回 null

    default:
    return null;
    

    【讨论】:

    • 我仍然面临同样的问题
    • @user2589387 在这种情况下,问题一定出在子组件上。检查 ConsultantListDetailPage 并确保它们在没有要渲染的内容时显式返回 null
    【解决方案2】:

    只需从开关盒中删除默认块。现在它正在工作

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2015-06-09
      • 2021-02-16
      • 2023-04-08
      • 2016-06-26
      • 1970-01-01
      相关资源
      最近更新 更多