如何解决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 举报,一经查实,本站将立刻删除。