反应本机错误!元素类型无效:应为字符串或类/函数,但得到:未定义

Posted

技术标签:

【中文标题】反应本机错误!元素类型无效:应为字符串或类/函数,但得到:未定义【英文标题】:React Native error! Element type is invalid: expected a string or a class/function but got: undefined 【发布时间】:2020-08-09 03:13:32 【问题描述】:

我是高级前端 Web 开发课程的大三学生,我们刚刚开始学习 React。我对 React 还很陌生,并且正在努力解决这个错误。我正在为我的最终项目构建一个电子商务网站,我通过 create-react-app 将@moltin/sdk 与 React 和 Redux 一起使用,因此我没有 webpack 配置。我的代码编译成功,但是,我收到了这个错误:

Blockquote 错误:元素类型无效:应为字符串(对于内置组件)或类/函数(对于复合组件),但得到:未定义。您可能忘记从定义组件的文件中导出组件,或者您可能混淆了默认导入和命名导入。

我不确定这是怎么回事。我检查了所有组件,并在各自的文件中为每个组件设置了导出默认值,因为导出默认值仅限于每个文档一个。任何帮助将不胜感激,我已经包含在 index.js 文件中,根据错误和错误消息,问题来自哪里。

Error Message Picture

import React from 'react';
import render from 'react-dom';
import './index.css';
import  Provider  from 'react-redux';
import  ConnectedRouter  from 'react-router-redux';
import App from '../src/component/App.js';
import store,  history  from './store';

const target = document.getElementById('root');

render(
  <Provider store=store>
  <ConnectedRouter history=history>
    <div>
      <App />
    </div>
  </ConnectedRouter>
</Provider>, target
);

这是在 React ^16.13.1、react-redux ^7.2.0 和 redux ^4.0.5 上。再次感谢!

【问题讨论】:

检查您的导入是否正确,是否正确导出 好的,谢谢,我去看看。 还要检查一下:import ConnectedRouter from 'connected-react-router' 这是来自文档,因为 react-router-redux 不再维护。 github.com/supasate/connected-react-router 非常感谢!我更换了包装,它起作用了。 【参考方案1】:
import  ConnectedRouter  from 'connected-react-router'

这是连接路由器的实际导入。 connected-react-router 是用于 React Router 的 Redux 绑定的库。使用以下命令安装此软件包。

npm install --save connected-react-router

【讨论】:

以上是关于反应本机错误!元素类型无效:应为字符串或类/函数,但得到:未定义的主要内容,如果未能解决你的问题,请参考以下文章

错误:元素类型无效:在尝试更新状态时,应在反应中出现字符串

元素类型无效:应为字符串或类/函数(用于复合组件)但得到:对象

运行反应本机应用程序时出错-检查`App`的渲染方法

Next Js 错误:元素类型无效:预期为字符串(对于内置组件)或类/函数(对于复合组件)但得到:未定义

Redux 存储:元素类型无效:应为字符串

错误:元素类型无效:需要一个字符串(对于内置组件)reactjs