微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

React Router:无法识别位置“ /”吗?

如何解决React Router:无法识别位置“ /”吗?

我让React Router在年内运作良好。现在今天早上突然停止工作了。我正在使用React Router 5。

我创建了一个微型演示项目来演示异常情况。这是路由器:

import React from 'react'
import {Route,Router,Switch} from 'react-router';
import {Link} from 'react-router-dom'
import History from 'history';

const browserHistory = History.createbrowserHistory();
console.log(browserHistory.location);

export function App() {
    return (
        <Router history={browserHistory}>
            <Switch>
                <Route path="/" render={(routeProps) =>
                    <Link to={"/"}>Home</Link>
                }/>
                <Route render={(routeProps) =>
                    <Link to={"/"}>It's the same location ("/"). Why did I go to a different route?</Link>
                 }/>
            </Switch>
        </Router>
    )
}

单击“主页”,应该重新显示主页...但是没有。

Here's a dropbox link to download the tiny demo app。流星是构建工具,因此要运行它:

  • meteor npm install
  • meteor run
  • http://localhost:3000/上查看应用程序

我想念什么?

解决方法

好的,我修复了。

代替:

import {Route,Router,Switch} from 'react-router';
import {Link} from 'react-router-dom'

...必须是:

import {
    BrowserRouter as Router,Switch,Route,Link
} from "react-router-dom";

现在的问题是,为什么它曾经以第一种方式起作用?我的应用程序已经有这么多年了,直到昨天早上都可以正常工作。

如果任何人都可以在一两个月内发布答案,我将在此处将其标记为可接受的答案。

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。