index.ts 631 B

123456789101112131415161718192021222324252627282930
  1. import CN from './cn'
  2. import EN from './en'
  3. export type { LocaleType } from './cn'
  4. type Lang = 'en' | 'cn'
  5. const LANG_KEY = 'lang'
  6. export function getLang(): Lang {
  7. const savedLang = localStorage?.getItem(LANG_KEY)
  8. if (['en', 'cn'].includes(savedLang ?? '')) {
  9. return savedLang as Lang
  10. }
  11. const lang = navigator.language.toLowerCase()
  12. if (lang.includes('zh') || lang.includes('cn')) {
  13. return 'cn'
  14. } else {
  15. return 'en'
  16. }
  17. }
  18. export function changeLang(lang: Lang) {
  19. localStorage.setItem(LANG_KEY, lang)
  20. location.reload()
  21. }
  22. export default { en: EN, cn: CN }[getLang()]