// 国际化工具函数 export const i18nUtils = { // 切换语言 changeLanguage(locale) { // 保存到本地存储 uni.setStorageSync('language', locale) // 如果在页面中,可以通过 getCurrentPages 获取当前页面实例 const pages = getCurrentPages() if (pages.length > 0) { const currentPage = pages[pages.length - 1] if (currentPage.$vm && currentPage.$vm.$i18n) { currentPage.$vm.$i18n.locale = locale } } // 显示切换成功提示 uni.showToast({ title: '语言切换成功', icon: 'success' }) }, // 获取当前语言 getCurrentLanguage() { return uni.getStorageSync('language') || 'zh' }, // 获取系统语言 getSystemLanguage() { let language = 'zh' try { const systemInfo = uni.getSystemInfoSync() language = systemInfo.language // 处理语言代码 if (language.indexOf('zh') !== -1) { language = 'zh' } else if (language.indexOf('en') !== -1) { language = 'en' } else if (language.indexOf('pt') !== -1) { language = 'pt' } else { language = 'zh' // 默认中文 } } catch (e) { console.log('获取系统语言失败:', e) } return language }, // 获取语言显示名称 getLanguageName(code) { const languageMap = { 'zh': '中文', 'en': 'English', 'pt': 'Português' } return languageMap[code] || '中文' } }