我有服务器端渲染应用程序并使用react-router进行路由。我正在使用 Router.Run 之前因为方法不再使用 Router.Match 。以前当路由更改时路由器.run曾经被调用但是行为相同在router.match中没有发生。背后有什么理由吗?
答案 0 :(得分:0)
我在下面定义的入口模块中定义了我的路由器,它将转到Layout组件以查找路径路径:
import { Router, Route, IndexRoute, hashHistory } from "react-router";
ReactDOM.render(
<Router history={hashHistory}>
<Route path="/" component={Layout}>
//<IndexRoute component={Featured}></IndexRoute>
<Route path="archives" name="archives" component={Archives}></Route>
<Route path="settings" component={Settings}></Route>
<Route path="featured" component={Featured}></Route>
</Route>
</Router>,
document.getElementById('app'));
布局组件将路由器中定义的路径绑定到布局组件
中的不同组件import { Link } from "react-router";
class Layout extends React.Component(
render(){
return(
{this.props.children}
<li><MenuItem><Link to="archives">archives</Link></MenuItem></li>
<li><MenuItem><Link to="settings">settings</Link></MenuItem></li>
<li><MenuItem><Link to="featured">featured</Link></MenuItem></li>
)
}
);
您可以为路线组件定义任何操作。对我来说工作正常