元素类型在路由react-router-redux上无效

时间:2018-05-25 02:43:37

标签: reactjs routing router react-router-redux

当我尝试在我的应用上添加路线时出现以下错误,我不知道我做错了什么,我试图按照文档指南进行操作

  

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

     

检查AppRoutes

的渲染方法
import React from 'react';
import { ConnectedRouter } from 'react-router-redux';
import { Route, Switch } from 'react-router-dom';

import SignUp from '../../screens/SignUp';

import { history } from '../../../redux/store';

function AppRoutes() {
  return (
    <ConnectedRouter history={history}>
      <Switch>
        <Route path="/login" component={SignUp} />
        <Route exact path="/" component={SignUp} />
      </Switch>
    </ConnectedRouter>
  );
}

export default AppRoutes;

2 个答案:

答案 0 :(得分:1)

您可能安装了react-router-redux,如下所示:

npm install --save react-router-redux

yarn add react-router-redux

这将安装4.x版本,因此您收到此错误。如果您仔细查看文档,您将看到以下说明:

npm install --save react-router-redux@next

yarn add react-router-redux@next

安装5.x的“下一个”版本后,此错误将消失。

答案 1 :(得分:0)

您需要按正确的顺序安装步骤。您可以查看以下链接:https://github.com/ReactTraining/react-router/issues/5428。 teps重现

创建一个新应用 npm install -g create-react-app create-react-app react-router-params cd react-router-params /

安装反应路由器 安装react redux npm install react-router-dom @ next

直接从文档

中取出示例中的粘贴

运行它 npm start