Reactjs React App-上下文“router”在“LinkContainer”中标记为必需,但其值为“undefined”`

Reactjs React App-上下文“router”在“LinkContainer”中标记为必需,但其值为“undefined”`,reactjs,react-router,react-bootstrap,react-router-dom,react-router-bootstrap,Reactjs,React Router,React Bootstrap,React Router Dom,React Router Bootstrap,尝试运行React应用程序时,我在浏览器中不断遇到以下错误: TypeError: Cannot read property 'history' of undefined LinkContainer.js var href = this.context.router.history.createHref(typeof to === 'string' ? { 控制台显示此错误: The context `router` is marked as required in `LinkContain

尝试运行React应用程序时,我在浏览器中不断遇到以下错误:

TypeError: Cannot read property 'history' of undefined

LinkContainer.js
var href = this.context.router.history.createHref(typeof to === 'string' ? {
控制台显示此错误:

The context `router` is marked as required in `LinkContainer`, but its value is `undefined`.
我在Index.js中定义了
,并正确设置了LinkContainers,或者我认为是这样。现在我只有一条简单的路线。我读了很多关于React Router v4的文章,在React Router Bootstrap中使用LinkContainer时会出现问题,但是在v4中没有解决方法,我应该降级到v3,或者我完全错过了让它工作的东西

我正在使用以下软件包版本:

"react": "^16.8.3",
"react-bootstrap": "^1.0.0-beta.5",
"react-dom": "^16.8.3",
"react-router": "^4.3.1",
"react-router-bootstrap": "^0.24.4",
"react-router-dom": "^4.4.0-beta.6",
我有以下代码:

Index.js

import React from 'react';
import ReactDOM from 'react-dom';
import './index.css';
import App from './App';
import * as serviceWorker from './serviceWorker';
import { BrowserRouter as Router } from "react-router-dom";

ReactDOM.render(<Router><App /></Router>, document.getElementById("root"));

serviceWorker.unregister();
从“React”导入React;
从“react dom”导入react dom;
导入“./index.css”;
从“./App”导入应用程序;
将*作为serviceWorker从“/serviceWorker”导入;
从“react Router dom”导入{BrowserRouter as Router};
render(,document.getElementById(“根”));
serviceWorker.unregister();
App.js

import React, { Component } from "react";
import { Navbar, Nav, NavItem } from "react-bootstrap";
import { LinkContainer } from "react-router-bootstrap";
import "./App.css";
import Routes from "./Routes";

class App extends Component {
    render() {
      return (
        <div className="App container">
          <Navbar fluid collapseOnSelect>
              <Navbar.Brand>
                <LinkContainer to="/home">
                    <NavItem>Ness</NavItem>
                </LinkContainer>
              </Navbar.Brand>
              <Navbar.Toggle />
            <Navbar.Collapse>
              <Nav pullRight>
                <LinkContainer to="/signup">
                  <NavItem>Signup</NavItem>
                </LinkContainer>
                <LinkContainer to="/login">
                  <NavItem>Login</NavItem>
                </LinkContainer>
              </Nav>
            </Navbar.Collapse>
          </Navbar>
          <Routes />
        </div>
      );
    }
}

export default App;
import React,{Component}来自“React”;
从“react bootstrap”导入{Navbar,Nav,NavItem};
从“react router bootstrap”导入{LinkContainer};
导入“/App.css”;
从“/Routes”导入路由;
类应用程序扩展组件{
render(){
返回(
海角
报名
登录
);
}
}
导出默认应用程序;
Routes.js

import React from "react";
import { Route, Switch } from "react-router-dom";
import Home from "./containers/Home";

export default () => 
    <Switch>
        <Route path="/home" component={Home} />
    </Switch>;
从“React”导入React;
从“react router dom”导入{Route,Switch};
从“/containers/Home”导入主页;
导出默认值()=>
;
如果我使用“react router dom”中的链接,我可以让它工作,但我无法从“react router bootstrap”中让LinkContainer工作。如果我使用“react router dom”中的链接,我可以让它工作,但我无法从“react router bootstrap”中让LinkContainer工作。