tian-yan-yan
Version:
一套不算好用的组件
57 lines (47 loc) • 1.33 kB
JavaScript
/*
* 语言切换
* @author: 张文
* @date 2022-04-14
* */
export const Language = {
/**
* 获取指定key的翻译
* @author 张文
* @date 2022-04-14
* @param {String} key 需要获取的语言的key
* @param {String} dft 当无法从当前语言获取时的默认值
* @param {Object|Array} params 语言中用到的参数
* @return {String} 获取到的语言或默认值
* */
get(key, dft = '未知', params = undefined) {
const language = window.tyWindowGlobalData.get('language.data') || {}
const c = language[key] || dft
if (params) {
if (Array.isArray(params) && params.length) {
return c.replace(/\{(\d+)}/g, (m, i) => params[i] || '')
}
if (typeof params === 'object') {
return c.replace(/\{(\w+)}/g, (m, i) => params[i] || '')
}
}
return c
},
/**
* 获取当前设置语言的key
* @author 张文
* @date 2022-04-14
* @return {String} 当前语言类型
* */
getKey() {
return window.tyWindowGlobalData.get('language.key')
},
/**
* 设置当前设置语言的key
* @author 张文
* @date 2022-04-14
* @param {String} key 设置的语言类型
* */
setKey(key) {
return window.tyWindowGlobalData.set('language.key', key)
},
}