在我的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'));
答案 0 :(得分:0)
这是因为在React Router中定义路由是客户端路由。如果您直接请求URL,则您的服务器需要了解客户端将处理该路由。
404是由服务器生成的,因为这通常是默认的路由行为。
相反,请配置您的服务器,使默认设置是使用客户端路由发回主html页面。然后,React Router将根据url在客户端处理它。