From 8f7a8d7d4ffe172194e1e55d4a7cfe1e4a4c8a8f Mon Sep 17 00:00:00 2001 From: Chell Date: Wed, 12 Oct 2022 13:52:02 +0200 Subject: [PATCH] fix: translation without reloading (#1215) * fix: translation without reloading * fix: language switch --- web/src/App.js | 3 ++- web/src/Setting.js | 2 +- web/src/auth/LoginPage.js | 3 ++- web/src/i18n.js | 3 ++- 4 files changed, 7 insertions(+), 4 deletions(-) diff --git a/web/src/App.js b/web/src/App.js index bf452085..f28c565c 100644 --- a/web/src/App.js +++ b/web/src/App.js @@ -74,6 +74,7 @@ import ModelEditPage from "./ModelEditPage"; import SystemInfo from "./SystemInfo"; import AdapterListPage from "./AdapterListPage"; import AdapterEditPage from "./AdapterEditPage"; +import {withTranslation} from "react-i18next"; const {Header, Footer} = Layout; @@ -798,4 +799,4 @@ class App extends Component { } } -export default withRouter(App); +export default withRouter(withTranslation()(App)); diff --git a/web/src/Setting.js b/web/src/Setting.js index ba92a713..184f14e3 100644 --- a/web/src/Setting.js +++ b/web/src/Setting.js @@ -554,7 +554,7 @@ export function changeLanguage(language) { localStorage.setItem("language", language); changeMomentLanguage(language); i18next.changeLanguage(language); - window.location.reload(true); + // window.location.reload(true); } export function changeMomentLanguage(language) { diff --git a/web/src/auth/LoginPage.js b/web/src/auth/LoginPage.js index 7b63c154..55ca8cea 100644 --- a/web/src/auth/LoginPage.js +++ b/web/src/auth/LoginPage.js @@ -29,6 +29,7 @@ import i18next from "i18next"; import CustomGithubCorner from "../CustomGithubCorner"; import {CountDownInput} from "../common/CountDownInput"; import SelectLanguageBox from "../SelectLanguageBox"; +import {withTranslation} from "react-i18next"; const {TabPane} = Tabs; @@ -730,4 +731,4 @@ class LoginPage extends React.Component { } } -export default LoginPage; +export default withTranslation()(LoginPage); diff --git a/web/src/i18n.js b/web/src/i18n.js index 0cde1d47..6366d86e 100644 --- a/web/src/i18n.js +++ b/web/src/i18n.js @@ -23,6 +23,7 @@ import ja from "./locales/ja/data.json"; import es from "./locales/es/data.json"; import * as Conf from "./Conf"; import * as Setting from "./Setting"; +import {initReactI18next} from "react-i18next"; const resources = { en: en, @@ -80,7 +81,7 @@ function initLanguage() { return language; } -i18n.init({ +i18n.use(initReactI18next).init({ lng: initLanguage(), resources: resources,