Jelajahi Sumber

update lang

tremble 3 tahun lalu
induk
melakukan
e5cc971dd8
1 mengubah file dengan 21 tambahan dan 0 penghapusan
  1. 21 0
      src/i18n/index.js

+ 21 - 0
src/i18n/index.js

@@ -4,6 +4,18 @@ import browser from '@/utils/browser'
 
 export { useI18n }
 export const SUPPORT_LOCALES = ['zh_CN', 'en', 'zh_HK']
+let getUrl = (href, queryArr) => {
+    queryArr.forEach((item) => {
+        if (!browser.hasURLParam(item.key)) {
+            let ttt = href.split("index.html?");
+            href = `${ttt[0]}index.html?${item.key}=${item.val}&${ttt[1]}`;
+        } else {
+            href = browser.replaceQueryString(href, item.key, item.val);
+        }
+    });
+
+    return href;
+};
 
 export function getLocale() {
     let lang = browser.getURLParam('lang')
@@ -43,6 +55,15 @@ export function setI18nLanguage(i18n, locale) {
      *
      * axios.defaults.headers.common['Accept-Language'] = locale
      */
+
+    let tmp = getUrl(window.location.href, [
+        {
+            key: "lang",
+            val: locale,
+        },
+    ]);
+    history.replaceState(null, null, tmp);
+
     document.querySelector('html').setAttribute('lang', locale)
 }