react-router - 在添加路由后获得404

时间:2016-08-24 08:31:34

标签: iis reactjs react-router

在我的aspx webform页面(test.aspx)中,我有一个标签,我想在点击时执行react组件(第二个组件)。目前,在进入/ SysAdmin / HelpPageManagement

时,我得到了404

代码

Test.aspx文件

<Link to="/SysAdmin/HelpPageManagement" href="#">Help Pages</Link>

main.js

var React = require("react");
var ReactDom = require("react-dom");
var firstComponent = require("../Components/helpPage_Management_Component");
import {Router, Route, browserHistory } from 'react-router';

var secondComponent = React.createClass({
 render() {
     return ( <h1>Help Page </h1> );
  }
});

const router = (
  <Router history={browserHistory}>
    <Route path="/SysAdmin/HelpPageManagement" component={secondComponent}      />
 <Route path="/systemmaintenance.aspx" component={firstComponent} />

 </Router>
 )
 ReactDom.render(router, document.getElementById('helpPage'));

1 个答案:

答案 0 :(得分:0)

这是因为在React Router中定义路由是客户端路由。如果您直接请求URL,则您的服务器需要了解客户端将处理该路由。

404是由服务器生成的,因为这通常是默认的路由行为。

相反,请配置您的服务器,使默认设置是使用客户端路由发回主html页面。然后,React Router将根据url在客户端处理它。