[new feature] add i18n support (#310)
* fix: Tabbar icon line-height * [new feature] progress add showPivot prop * [new feature] TabItem support vue-router * [new feature] update document header style * [Doc] add toast english ducoment * [new feature] add i18n support * feat: Extract demos from markdown * feat: Base components demos * [new feature] complete demo extract & translate * [fix] text cases * fix: add deepAssign test cases * fix: changelog detail * [new feature] AddressEdit support i18n
This commit is contained in:
@@ -13,19 +13,20 @@ window.syncPath = function(dir) {
|
||||
const iframe = document.querySelector('iframe');
|
||||
|
||||
if (!isInIframe && !isMobile && iframe) {
|
||||
const pathParts = currentDir.split('/');
|
||||
let lang = pathParts[0];
|
||||
if (currentDir[0] === '/') {
|
||||
lang = pathParts[1];
|
||||
}
|
||||
setLang(lang);
|
||||
|
||||
iframeReady(iframe, () => {
|
||||
iframe.contentWindow.changePath(currentDir);
|
||||
iframe.contentWindow.changePath(lang, currentDir);
|
||||
});
|
||||
}
|
||||
};
|
||||
|
||||
window.changePath = function(path = '') {
|
||||
const pathParts = path.split('/');
|
||||
let lang = pathParts[0];
|
||||
if (path[0] === '/') {
|
||||
lang = pathParts[1];
|
||||
}
|
||||
|
||||
window.changePath = function(lang, path = '') {
|
||||
setLang(lang);
|
||||
window.vueRouter.replace(path);
|
||||
};
|
||||
|
||||
+11
-7
@@ -1,16 +1,20 @@
|
||||
import Locale from '../../../packages/locale';
|
||||
import zhCN from '../../../packages/locale/lang/zh-CN';
|
||||
import enUS from '../../../packages/locale/lang/en-US';
|
||||
|
||||
const langMap = {
|
||||
'en-US': enUS,
|
||||
'zh-CN': zhCN
|
||||
};
|
||||
|
||||
const userLang = window.localStorage.getItem('VANT_LANGUAGE') || window.navigator.language || 'en-US';
|
||||
let defaultLang = 'en-US';
|
||||
if (userLang.indexOf('zh-') !== -1) {
|
||||
defaultLang = 'zh-CN';
|
||||
}
|
||||
|
||||
let currentLang = defaultLang;
|
||||
|
||||
export function getLang() {
|
||||
return currentLang;
|
||||
}
|
||||
setLang(defaultLang);
|
||||
|
||||
export function setLang(lang) {
|
||||
window.localStorage.setItem('VANT_LANGUAGE', lang);
|
||||
currentLang = lang;
|
||||
Locale.use(lang, langMap[lang]);
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user