我很反应,我选择使用路由器和引导程序库。它们基本上只是react-router-bootstrap。我只是对事物感觉很好,我想创建一个具有一些基本网址导航的网络应用程序。我有4个部分,主页浏览添加和关于,点击链接工作得很好,路由也是如此,但当导航到默认路由时,处理程序工作正常,因为它显示Home组件,但不会使主页按钮在导航中活跃。我有点卡住,想知道是否有人可以帮助我?我想让那个家庭部分活跃在' /'默认路线,并认为我可以重定向到' / home'然后让其余的人来处理它,但是看起来我不能为DefaultRoute添加路径道具。所以我很好奇是否有人有任何想法?同样好奇,如果这看起来像构建我正在构建的东西的正确方法。
我的要点是HERE
提前感谢所有人!!!
答案 0 :(得分:3)
我做的唯一改变是你的路线,他们过去看起来像这样:
var routes = (
<Route handler={App} >
<DefaultRoute handler={Home}/>
<Route name="home" handler={Home} path="/home">
</Route>
<Route name="browse" handler={Browse} path="/browse">
</Route>
<Route name="add" handler={Add} path="/add">
</Route>
<Route name="about" handler={About} path="/about">
</Route>
</Route>
);
我将它们改为:
var routes = (
<Route handler={App} >
<DefaultRoute name="home" path="/" handler={Home}/>
<Route handler={Home} path="/home">
</Route>
<Route name="browse" handler={Browse} path="/browse">
</Route>
<Route name="add" handler={Add} path="/add">
</Route>
<Route name="about" handler={About} path="/about">
</Route>
</Route>
);
我测试了它,它按预期工作。当您访问主页时,该网址只有/#/
,并且没有/#/home
这样的后缀,我认为这不是问题。