di18n-translate

0.0.9 • Public • Published

di18n翻译函数

How to

  const DI18n = require('di18n-translate')
  const di18n = new DI18n({
    locale: 'en',       // 语言环境
    isReplace: false,   // 是否开启运行时功能(适用于没有使用任何构建工具开发流程)
    messages: {         // 语言映射表
      en: {
        你好: 'Hello, {xl}'
      },
      zh: {
        你好: '你好, {xl}'
      }
    }
  })

di18n有2个翻译方法: $t, $html

  // 带参数
  di18n.$t('你好', {person: 'xl'})    
  // 输出 Hello, xl

字符串拼接的dom中使用${locale}表示语言环境,$t()标识需要翻译的字段,用法如下:

let tpl = '<div class="wrapper ${locale}">' +
    '<img src="/images/${locale}/test.png">' +
    '<p>$t("你好")</p>' + 
    '</div>'
 
let str = di18n.$html(tpl)
 
// 字符串替换后输出字符串str: 
  <div class="wrapper en">
    <img src="/images/en/test.png">
    <p>Hello</p>
  </div>
 
// 最后再将这个dom字符串传入到页面当中去
document.querySelector('.box-wrapper').innerHTML = str

手动设置语言版本,并更新页面内容

  di18n.setLocale('en', function () {
    // 回调函数
  })

Readme

Keywords

Package Sidebar

Install

npm i di18n-translate

Weekly Downloads

5

Version

0.0.9

License

ISC

Last publish

Collaborators

  • commanderxl