logwire-wms-pda-ui
Version:
运匠科技wms-PDA基础组件库
60 lines (46 loc) • 1.46 kB
JavaScript
/*
* 语言切换
* @author: 张文
* @date 2022-04-14
* */
import {language} from "../api/common/Language";
import {LocalStorage} from "./LocalStorage";
export const Language = {
/*
* 获取指定key的翻译
* @author 张文
* @date 2022-04-14
* @param {String} key 需要获取的语言的key
* @param {String} dft 当无法从当前语言获取时的默认值
* @return {String} 获取到的语言或默认值
* */
get(key, dft = '未知'){
if (!key) return dft
const language = window.lwWindowGlobalData.get('language.data')
return language[key] || dft
},
// 获取当前设置语言的key
getKey(){
return window.lwWindowGlobalData.get('language.key')
},
// 设置当前设置语言的key
setKey(data){
return window.lwWindowGlobalData.set('language.key', data)
},
// 异步设置当前语言的key
asyncSetKey(key, loading = true){
return new Promise((pres,perr)=>{
// 判断当前设置值是否和原始值一致,如果一直就不请求接口
if (window.lwWindowGlobalData.get('language.key') === key){
pres()
return
}
window.lwWindowGlobalData.set('language.key', key)
LocalStorage.set('lwLanguage', key)
language.get(key, loading).then(res=>{
window.lwWindowGlobalData.set('language.data', res)
pres()
}).catch(()=>perr())
})
},
}