fix: 添加better auth 接口配置

This commit is contained in:
imeepos
2026-01-13 14:58:48 +08:00
parent 02d0c807cd
commit 9fa65a9ac3
10 changed files with 720 additions and 7376 deletions

View File

@@ -1,11 +1,11 @@
import i18n from 'i18next'
import { initReactI18next } from 'react-i18next'
import AsyncStorage from '@react-native-async-storage/async-storage'
import { NativeModules, Platform } from 'react-native'
import { storage } from './storage'
// 导入语言资源
import zhCN from '../locales/zh-CN.json'
import enUS from '../locales/en-US.json'
import zhCN from '../locales/zh-CN.json'
// 定义支持的语言
export const SUPPORTED_LANGUAGES = {
@@ -52,7 +52,7 @@ const languageDetector = {
detect: async (callback: (lng: string) => void) => {
try {
// 1. 优先使用用户保存的语言设置
const savedLanguage = await AsyncStorage.getItem('app_language')
const savedLanguage = await storage.getItem('app_language')
if (savedLanguage) {
// 兼容旧的语言代码格式
if (savedLanguage === 'zh' || savedLanguage === 'zh-CN') {
@@ -63,7 +63,7 @@ const languageDetector = {
return
}
}
// 2. 如果没有保存的语言,尝试使用系统语言
const systemLang = getSystemLanguage()
callback(systemLang)
@@ -73,11 +73,11 @@ const languageDetector = {
callback('zh-CN')
}
},
init: () => {},
init: () => { },
cacheUserLanguage: async (lng: string) => {
try {
// AsyncStorage 在 Android 和 iOS 上都正常工作
await AsyncStorage.setItem('app_language', lng)
await storage.setItem('app_language', lng)
} catch (error) {
console.error('Error saving language:', error)
}
@@ -97,25 +97,25 @@ i18n.use(languageDetector)
translation: enUS,
},
},
// 默认语言
fallbackLng: 'zh-CN',
// 调试模式(开发环境开启)
debug: false,
// 兼容性配置:使用 v3 格式处理复数,避免 Android 端 Intl.PluralRules 不支持的问题
compatibilityJSON: 'v3',
// 插值配置
interpolation: {
escapeValue: false, // React已经处理了XSS防护
},
// 命名空间配置
defaultNS: 'translation',
ns: ['translation'],
// 键值分隔符
keySeparator: '.',
nsSeparator: ':',