Commit e64f4507 authored by antoor's avatar antoor

Optimization language selection module

优化语言选择模块
parent 72a2b77c
...@@ -3,6 +3,11 @@ ...@@ -3,6 +3,11 @@
*/ */
'use strict'; 'use strict';
const languages = {
'en': 'English',
'zh': '简体中文'
}
// 获取本地设置语言(如若没有,则获取浏览器语言 // 获取本地设置语言(如若没有,则获取浏览器语言
let lang = antSword['storage']('language', let lang = antSword['storage']('language',
false, false,
...@@ -10,7 +15,10 @@ let lang = antSword['storage']('language', ...@@ -10,7 +15,10 @@ let lang = antSword['storage']('language',
); );
// 判断本地设置语言是否符合语言模板 // 判断本地设置语言是否符合语言模板
lang = ['en', 'zh'].indexOf(lang) === -1 ? 'en' : lang; lang = languages[lang] ? lang : 'en';
// 返回语言模板 // 返回语言模板
module.exports = require(`./${lang}`); let langModule = require(`./${lang}`);
langModule.__languages__ = languages;
module.exports = langModule;
// /**
// 语言设置 * 语言设置
// */
const LANG = antSword['language']['settings']['language']; const LANG = antSword['language']['settings']['language'];
const LANG_T = antSword['language']['toastr']; const LANG_T = antSword['language']['toastr'];
...@@ -22,14 +22,22 @@ class Language { ...@@ -22,14 +22,22 @@ class Language {
]); ]);
// 表单 // 表单
const _language = localStorage.getItem('language') || 'en'; const _language = antSword['storage']('language', false, 'en');
const form = cell.attachForm([ const form = cell.attachForm([
{ type: 'settings', position: 'label-left', labelWidth: 100, inputWidth: 150 }, { type: 'settings', position: 'label-left', labelWidth: 100, inputWidth: 150 },
{ type: 'block', inputWidth: 'auto', offsetTop: 12, list: [ { type: 'block', inputWidth: 'auto', offsetTop: 12, list: [
{ type: 'combo', label: LANG['form']['label'], readonly: true, name: 'language', options: [ { type: 'combo', label: LANG['form']['label'], readonly: true, name: 'language',
{ text: LANG['form']['zh'], value: 'zh', selected: _language === 'zh' }, options: (() => {
{ text: LANG['form']['en'], value: 'en', selected: _language === 'en' } let _ = [];
] } for (let l in antSword['language']['__languages__']) {
_.push({
text: antSword['language']['__languages__'][l],
value: l,
selected: _language === l
});
}
return _;
})() }
]} ]}
], true); ], true);
...@@ -54,4 +62,4 @@ class Language { ...@@ -54,4 +62,4 @@ class Language {
} }
} }
export default Language; export default Language;
\ No newline at end of file
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment