mirror of
https://gitee.com/baidu/amis.git
synced 2024-12-02 11:58:10 +08:00
84 lines
1.5 KiB
Markdown
84 lines
1.5 KiB
Markdown
|
---
|
|||
|
title: 多语言
|
|||
|
---
|
|||
|
|
|||
|
amis 内置对英文的支持,同时你也可以扩展其他语言。
|
|||
|
|
|||
|
## JS SDK
|
|||
|
|
|||
|
从 1.1.0 版本开始已经自带英文翻译,所以只需要在 props 里设置 locale 即可。
|
|||
|
|
|||
|
```javascript
|
|||
|
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,使用如下方法:
|
|||
|
|
|||
|
```javascript
|
|||
|
import 'amis/lib/locale/en';
|
|||
|
```
|
|||
|
|
|||
|
在渲染 amis 组件的时候设置 locale 为 en
|
|||
|
|
|||
|
```javascript
|
|||
|
{
|
|||
|
renderAmis(
|
|||
|
{
|
|||
|
type: 'page',
|
|||
|
title: '简单页面',
|
|||
|
body: '内容'
|
|||
|
},
|
|||
|
{
|
|||
|
locale: 'en'
|
|||
|
}
|
|||
|
);
|
|||
|
}
|
|||
|
```
|
|||
|
|
|||
|
## 扩展其它语言
|
|||
|
|
|||
|
如果想扩展其他语言,首先参考 `https://github.com/baidu/amis/blob/master/src/locale/en.ts` 文件,了解需要翻译哪些文字,以中文为 key,然后参考后面的示例注册新语言,未翻译的文字都将使用默认语言,即中文。
|
|||
|
|
|||
|
> 目前这种方式将会在未来修改,为了支持更多语言而不再使用中文为 key
|
|||
|
|
|||
|
### JS SDK 扩展方法
|
|||
|
|
|||
|
```javascript
|
|||
|
let amisLib = amisRequire('amis');
|
|||
|
amisLib.registerLocale('jp', {
|
|||
|
提交: '送信'
|
|||
|
});
|
|||
|
```
|
|||
|
|
|||
|
### React 扩展方法
|
|||
|
|
|||
|
```javascript
|
|||
|
import {registerLocale} from 'amis';
|
|||
|
registerLocale('jp', {
|
|||
|
提交: '送信'
|
|||
|
});
|
|||
|
```
|