我的React应用程序的根文件夹与React-Router

时间:2016-04-29 21:02:16

标签: javascript reactjs react-router

我的React应用程序托管在www.mywebsite.com/myreact

当我定义路线时,我做过类似的事情:

<Router history={history}>
    <Route path="/" component={App} />
        <Route path="login" component={Login} />
    </Route>
</Router>

尽管如此,它一直抱怨路线中没有定义/myreact

当我定义它时,那样:

<Route path="/myreact" component={App} />

我试图访问URL www.mywebsite.com/myreact/login,浏览器抛出404错误。

但我可以正确访问www.mywebsite.com/myreact

我该怎么办?

感谢。

1 个答案:

答案 0 :(得分:2)

您应该能够为应用的“根”网址创建一个具有不同基本名称的自定义history对象。创建历史记录对象时使用useRouterHistory增强功能

https://github.com/reactjs/react-router/blob/master/docs/API.md#userouterhistorycreatehistory

this github issue thread

中的一些相关评论
import { createHistory } from 'history';
import { useRouterHistory } from 'react-router';

const browserHistory = useRouterHistory(createHistory)({
    basename: '/myreact'
});

您的路线文件现在应该可以使用browserHistory

<Router history={browserHistory}>
    <Route path="/" component={App} />
        <Route path="login" component={Login} />
    </Route>
</Router>