Skip to content

Latest commit

 

History

History
39 lines (31 loc) · 1.02 KB

I18n.md

File metadata and controls

39 lines (31 loc) · 1.02 KB

国际化组件(I18n)

国际化组件用于多语言输出,语言参数的格式为ll-CCll,语言码小写,地区码为大写,如en, zh-CN, zh-TW。多语言的配置文件位于@app/conf下,文件名格式为i18n_{lang}.yaml,如i18n_zh-CN.yaml

配置文件

组件配置:

# app.components.i18n
i18n:
    # 源语言,默认为en
    sourceLang: "en"
    
    # 支持的目标语言,只有在目标语言中才会进行多语言转换
    # 否则保持源语言不变
    targetLang: ["en", "zh-CN", "zh-TW"]

语言配置:

# i18n_zh-CN.yaml
"Success": "成功"
"System Error": "系统错误"
"Verify Sign Error": "验证签名错误"
"Custom Error": "自定义错误:%s"

使用示例

func (w *WelcomeController) ActionIndex() {
    // 简单输出
    data := pgo.App.GetI18n().Translate("Success", "zh-CN")
    // 支持格式化输出
    data := pgo.App.GetI18n().Translate("Custom Error", "zh-CN", err.Error())
    w.OutputJson(data, http.StatusOK)
}