TypeError: react__WEBPACK_IMPORTED_MODULE_6___default.a.lazy is not a function for react@16.5.2

TypeError: react__WEBPACK_IMPORTED_MODULE_6___default.a.lazy is not a function for react@16.5.2

我正在尝试将 lazy loading 用于我的 create-react-appreact@16.5.2,我这样做了 :

import React, { Component } from 'react';
import { BrowserRouter } from 'react-router-dom';

const Header = React.lazy(() => import('./_header'));     

class SomeFile extends Component {

  render() {
    return (
      <BrowserRouter>
          <React.Fragment>
            <Header  />
          </React.Fragment>
      </BrowserRouter>
    );
  }
}

export default SomeFile;

你知道为什么会出现这个错误吗?是因为我的反应版本吗?基于 this 一切似乎都很好!

编辑

这是什么意思?基于 reactjs.org :

注:

React.lazy 并且 Suspense 尚不可用于服务器端渲染。如果您想在服务器呈现的应用程序中进行代码拆分,我们建议使用可加载组件。它有一个很好的服务器端渲染包拆分指南。

React.lazy 仅适用于 v16.6.0 https://reactjs.org/blog/2018/10/23/react-v-16-6.html

在您的命令行界面中,尝试使用以下命令更新 React:

npm i react@latest

重新启动开发服务器,如果您仍然遇到问题,请尝试上述步骤:

在Readme.md文件中搜索REACT_EDITOR,在其前面插入=atom,如下:

REACT_EDITOR=atom

然后,保存,重启开发服务器。现在应该可以使用了