我正在构建一个 Web 应用程序,使用最新的 React 和 React Router 版本,在我的情况下,我的应用程序支持多种语言,并且由于索引,我们为每种语言都有单独的入口 html 文件。所以对于像 myapp.com 这样的网址,我们会有
myapp.com/en/ - 英语
myapp.com/de/ - 适用于德语等...
在服务器端,这些/en/文件夹中的每一个当然都有自己的index.html文件,其中包含用给定语言编写的元、标题和其他元数据,并且它们都可以访问我们的 React 应用程序 ( bundle.js )
我之前已经用路由器哈希历史构建了类似的东西,所以我的应用程序看起来像 myapp.com/en/#/home,而我在routes.js 中的主路由当然看起来像这样
<Route path="/" component={MainComponent}
现在我想使用 BrowserRouter,如果 url 是myapp.com/en/,我希望我的路由看起来像这样 ,链接是:
<Link to="/home" />
一旦点击它就会把你带到myapp.com/en/home并且它会正确地呈现在 Route 中链接到它的 Compnent
<Route path="/home" exact component={HomeContainer} />
基本上目前这只会在我做这样的事情时才有效
<Link to=`/${getCurrentLanguage()}/home` /
路线是这样的
<Route path=`/${getCurrentLanguage()}/home` exact component={HomeContainer} />
这当然是疯狂的,
我如何才能实现所需的行为,或者您有什么不同的想法?谢谢
编辑我没有问任何关于 React 翻译的问题,我将使用 i18next 来翻译 React 端,我问的是使用不同的 index.html 文件进行路由的问题