| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293 | 
							- class Language {
 
- 	constructor() {
 
- 		this.languagePackage = null;
 
- 	}
 
- 	getLanguages(languagecode) {
 
- 		return new Promise((resolve) => {
 
- 			setTimeout(async () => {
 
- 				let res = {
 
- 					data: {}
 
- 				}
 
- 				if (languagecode != 'ZH' || this.languagePackage == null) res = await getApp().globalData.http.base({
 
- 					id: 2024062809072801,
 
- 					content: {
 
- 						date: Date.now()
 
- 					}
 
- 				})
 
- 				console.log("获取语言包", res.data)
 
- 				this.languagePackage = res.data[languagecode] || {};
 
- 				resolve(this.languagePackage)
 
- 				this.languagecode = languagecode;
 
- 				wx.removeStorageSync('languagecode');
 
- 				wx.setStorageSync('languagecode', languagecode)
 
- 			})
 
- 		})
 
- 	}
 
- 	async getLanguagePackage(that, setNavBarTitle) {
 
- 		that.setData({
 
- 			language: this.languagePackage || await this.getLanguages(wx.getStorageSync('languagecode')),
 
- 			sColors: getApp().globalData.sColors
 
- 		})
 
- 		if (setNavBarTitle) this.setNavBarTitle(setNavBarTitle)
 
- 	}
 
- 	getMapText(text, f = '', r = '') {
 
- 		let v = ''
 
- 		try {
 
- 			v = this.languagePackage[text] || text
 
- 		} catch (error) {
 
- 			console.log('getMapText:未获取到', text)
 
- 			v = text
 
- 		}
 
- 		return f + v + r
 
- 	}
 
- 	setNavBarTitle(title) {
 
- 		wx.setNavigationBarTitle({
 
- 			title: this.getMapText(title)
 
- 		})
 
- 	}
 
- 	modeBoxPrompts(list, title = '提示', confirmText = '确定') {
 
- 		wx.showModal({
 
- 			title: this.getMapText(title),
 
- 			content: this.joint(list),
 
- 			showCancel: false,
 
- 			confirmText: this.getMapText(confirmText),
 
- 		})
 
- 	}
 
- 	showToast(list) {
 
- 		if (list.length) wx.showToast({
 
- 			title: this.joint(list),
 
- 			icon: "none"
 
- 		})
 
- 	}
 
- 	modeBoxPrompts(list = [], title = '提示', confirmText = '确定') {
 
- 		wx.showModal({
 
- 			title: this.getMapText(title),
 
- 			content: this.joint(list),
 
- 			showCancel: false,
 
- 			confirmText: this.getMapText(confirmText),
 
- 		})
 
- 	}
 
- 	/* t:translate 是否翻译 v:value 值 f:front 前面 r:rear 后面 */
 
- 	joint(list) {
 
- 		if (typeof list == 'string') return this.getMapText(list)
 
- 		let str = ''
 
- 		list.forEach(v => {
 
- 			let value = ''
 
- 			try {
 
- 				value = v.t ? this.getMapText(v.v, v.f || '', v.r || '') : ((v.f || '') + v.v + (v.r || ''))
 
- 			} catch (error) {
 
- 				value = (v.f || '') + v.v + (v.r || '')
 
- 			}
 
- 			str += value
 
- 		})
 
- 		return str
 
- 	}
 
- }
 
- export {
 
- 	Language
 
- }
 
 
  |