amis/docs/zh-CN/extend/i18n.md
吴多益 0ae04ce946
docs:将文档移动 zh-CN 目录下;为以后支持英文版做准备 (#1309)
* docs:将文档移动 zh-CN 目录下;为以后支持英文版做准备

* 整理 autoFill

* 补充下载最新版本的说明 (#1298)

* fix: 修复在新版 Firefox 下 js sdk 报错 (#1300)

* 删掉可能报错的代码 (#1311)

* fix: 修复 css 变量不支持数字问题 (#1302)

* feat:增加 animation-duration,可以控制所有动画时长,也能用于一次性关闭所有动画效果 (#1303)

* feat:增加 animation-duration,可以控制所有动画时长,也能用于一次性关闭所有动画效果

* 补充文档

* Pageleave (#1310)

* form 添加页面离开提示功能

* 补充文档

Co-authored-by: 2betop <2betop.cn@gmail.com>
Co-authored-by: liaoxuezhi <liaoxuezhi@baidu.com>
2021-01-04 16:59:32 +08:00

1.5 KiB
Raw Blame History

title
多语言

amis 内置对英文的支持,同时你也可以扩展其他语言。

JS SDK

从 1.1.0 版本开始已经自带英文翻译,所以只需要在 props 里设置 locale 即可。

let amisScoped = amis.embed(
  '#root',
  {
    type: 'page',
    title: '表单页面',
    body: {
      type: 'form',
      mode: 'horizontal',
      api: '/saveForm',
      controls: [
        {
          label: 'Name',
          type: 'text',
          name: 'name'
        }
      ]
    }
  },
  {
    locale: 'en'
  }
);

React

React 中没有内置英文版本,需要自己 import使用如下方法

import 'amis/lib/locale/en';

在渲染 amis 组件的时候设置 locale 为 en

{
  renderAmis(
    {
      type: 'page',
      title: '简单页面',
      body: '内容'
    },
    {
      locale: 'en'
    }
  );
}

扩展其它语言

如果想扩展其他语言,首先参考 https://github.com/baidu/amis/blob/master/src/locale/en.ts 文件,了解需要翻译哪些文字,以中文为 key然后参考后面的示例注册新语言未翻译的文字都将使用默认语言即中文。

目前这种方式将会在未来修改,为了支持更多语言而不再使用中文为 key

JS SDK 扩展方法

let amisLib = amisRequire('amis');
amisLib.registerLocale('jp', {
  提交: '送信'
});

React 扩展方法

import {registerLocale} from 'amis';
registerLocale('jp', {
  提交: '送信'
});