index.js 688 字节
Newer Older
Q
qiang 已提交
1
const { I18n } = require('i18n')
Q
qiang 已提交
2
const { getLocale } = require('./locale')
Q
qiang 已提交
3

Q
qiang 已提交
4 5 6
const defaultLocale = 'en'

const locale = getLocale()
Q
qiang 已提交
7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27

const i18n = new I18n()

const staticCatalog = {}

// 暂时仅支持 en、zh_CN
const locales = [
  'en',
  // 'es',
  // 'fr',
  // 'zh_HK',
  'zh_CN'
]

locales.forEach(item => {
  // TODO 合并 HBuilderX 内置内容
  staticCatalog[item] = require(`../locales/${item}.json`)
})

i18n.configure({
  staticCatalog,
Q
qiang 已提交
28 29
  defaultLocale,
  retryInDefaultLocale: true,
Q
qiang 已提交
30 31 32 33
  mustacheConfig: {
    tags: ['{', '}'],
    disable: false
  },
Q
qiang 已提交
34 35
  fallbacks: {
    'en_*': 'en',
Q
qiang 已提交
36 37
    zh: 'zh_CN',
    'zh_*': 'zh_CN'
Q
qiang 已提交
38
  }
Q
qiang 已提交
39 40
})

Q
qiang 已提交
41 42
i18n.setLocale(locale)

Q
qiang 已提交
43
module.exports = i18n