国际化 i18n

为了使 Wayne 实现多语言使用,我们将进行国际化(i18n)开发。

开发流程

语言 ID
中文简体 zh-Hans
英语 en
  • 在 zh-Hans.json 文件中添加翻译对应的字段

    {
    "BUTTON": {
      "ADD": "添加"
    }
    }
    `
    
  • 将以上添加的字段添加到 html 文本中, 就可以得到一个文案是添加的按钮

<button> {{ 'BUTTON.ADD'  - translate }} </button>

开发脚本使用

我们在 frontend 目录下提供了 lang.js 脚本文件。

1. 同步中文字段到英文文件

$ node lang.js fill

2. 格式化中英文间隙

$ node lang.js format zh-Hans

3. 排序 json 文件的 key

// sort i18n 目录下所有 json 文件
$ node lang.js sort
// sort zh-Hans.json 文件
$ node lang.js sort zh-Hans

开发规范

开发说明

目前翻译字段定义依据俩个标准来规范:

  • 常用模块,如 button,表格 title,列表 title,我们归为通用模块,符合原则是不受业务模块限制
  • 业务模块,如部署(DEPLOYMENT), 状态副本集(STATEFULSET),我们提取出单独模块,并且后台字段符合后台业务加上 _ADMIN 命名方式,即(DEPLOYMENT_ADMIN) 举例:
    {
      "DEPLOYMENT": {
          "CREATE": "创建部署"
      },
      "DEPLOYMENT_ADMIN": {
          "CREATE": "创建部署"
      },
      "SHARED": {
          "DIFF": {
              "CHECK_DATA": "请检查数据"
          }
      }
    }
    

目前存在模块说明

模块名 说明
MESSAGE 消息通知和提示信息的文案
LIMIT 限制信息的文案
BUTTON button 的文案
USER 用户信息的文案
ACCOUNT 账户的文案
MENU 侧边栏 item 的文案
TITLE table 和 label 标题的文案
TMP 前台创建模板的通用文案
POD POD 的文案
CLUSTER 机房相关的文案
EVENT 事件模块的文案
HISTORY history 模块的文案
COPY 复制相关的文案
ACTION 行为相关的文案
UNIT 单位相关的文案
PLACEHOLDER placeholder 中的文案
PAGE 分页相关的文案
RULE 规则相关的文案
DEPLOYMENT 至 WEBHOOK 前台部署至 webhook 模块的文案
DEPLOYMENT_ADMIN 至 WEBHOOK_ADMIN 后台部署至 webhook 模块的文案

项目开发进度

进行中的模块 已完成的模块
后台状态副本集 首页部门概览
首页项目列表
首页 APIKeys
首页 Webhooks
首页成员列表
前台项目概览
前台部署
前台状态副本集
前台守护进程集
前台计划任务
前台配置集
前台加密字典
前台 PVC
前台成员管理
前台 APIKeys
前台 Webhooks
后台部署

特殊说明

对于 label 和 input 的 placeholder 使用相同文案情况可以不单独提取到 PLACEHOLDER。

更多命名规范请参考文档名词解释

results matching ""

    No results matching ""