H5Lang

功能描述

该模块用于项目中实现多语言功能,默认支持中文简体、中文繁体、英文、日语、韩语,并且使用时可根据每个国家或者地区语种代码自行添加更多语言场景。demo文件地址

快速入手

  1. fnGetLangName 方法默认使用当前手机系统的语言,如果使用 fnSetLangName 方法设置过语言环境, fnGetLangName 则返回设置过后的语种代码。
  2. 执行该模块翻译方法之前必须引入一个独立的翻译 lang.js 文件,可以在这里直接下载模版,该文件内格式如下。需要注意的是 vLangJson 全局变量名称不可以更改,因为 fnLanguage 翻译时是通过查找这个变量下对应的中文key(使用中文作为key值,注意考虑到开发的难度以及后期的维护工作量,可能使用的时候会感觉怪怪的,但不用担心语法上没有什么问题,并且这样对于开发、维护、翻译人员都是极大方便的),所以中文一定要与页面中的中文全等。
    var vLangJson = {
     '你好,世界!': {
         'zh-tw': '你好,世界!',
         'en-us': 'Hello, World!',
         'ja-jp': 'こんにちは、世界!',
         'ko-kr': '안녕하세요, 세계!'
         // ……自行添加更多语种(见特别说明)
     }
    }
    

效果图

依赖的模块

方法

fnLanguage(翻译)

js 原生调用(同步)

H5Lang.fnLanguage('你好,世界!');        //必填 |  ''    |  String         |  需要翻译的中文内容
                                        //必反 | String |  翻译之后的内容

art-template 模块引擎调用(同步)

{{'你好,世界!' | H5Lang.fnLanguage}}    //必填 |  ''    |  String         |  需要翻译的中文内容
                                        //必反 | String |  翻译之后的内容

fnGetLangName(获取当前语言环境语种代码)

js 原生调用(同步)

H5Lang.fnGetLangName();                 //必反 | String |  语种代码

fnSetLangName(设置当前语言环境语种代码)

js 原生调用(同步)

H5Lang.fnSetLangName('zh-cn');          //必填 |  ''    |  String         |  语种代码(见特别说明)
                                        //必反 | String |  语种代码(见特别说明)

fnHasLangCN(当前是否为中文)

js 原生调用(同步)

H5Lang.fnHasLangCN('zh-cn');           //必反 | Boolean |  是否为中文

特别说明

默认支持中文简体、中文繁体、英文、日语、韩语,如果有更多的语言场景可以根据每个国家或者地区语种代码,通过使用 fnSetLangName 方法即可设置当前环境的语言,建议使用该方法以后立马重启(api.rebootApp())APP,使语言环境重新渲染页面,已达到切换语言的目的。