我正在尝试用浏览器历史记录做出反应路由。从技术上讲,它的工作非常好。但是我面临的问题是,每次点击它都会附加路线会得到相同的路径,例如,
默认情况下,如果是
localhost:portno/postLogin/page1
,第二次点击它将变为localhost:portno/postLogin/postLogin/page2
,点击另一个链接后,它将变为localhost:portno/postLogin/postLogin/postLogin/page3
,依此类推
`var Router = require('react-router').Router;
var Route = require('react-router').Route;
var IndexRedirect = require('react- router').IndexRedirect;
var browserHistory = require('react-router').browserHistory;
module.exports = React.createClass({
render:function(){
return(
<Router history={browserHistory}>
<Route path="/" component={preLogin}/>
<Route path="postLogin" component={postLogin}>
<IndexRedirect to="page1" />
<Route path="page1" component={page1}/>
<Route path="page2" component={page2}/>
<Route path="page3" component={page3}/>
</Route>
</Router>
)}
});
我的导航栏页面的内容链接为
<li><Link to={"postLogin/page1"}></Link></li>
<li><Link to={"postLogin/page2"}></Link></li>
我尝试过的一件事是
对链接进行更改,如下所示,但这给了我错误,“React Router没有匹配任何路由”
<li><Link to={"page2"}></Link></li>
我在哪里做错了?
答案 0 :(得分:1)
您需要从/
开始所有路线
<Link to={"/postLogin/page1"}></Link>
。
这样,url将附加到基本路由而不是父路由。