umi-plugin-locale
A umi plugin for provide internationalization function.
Last updated 4 years ago by sorrycc .
MIT · Repository · Bugs · Original npm · Tarball · package.json
$ cnpm install umi-plugin-locale 
SYNC missed versions from official npm registry.

umi-plugin-locale

i18n plugin for umi.


Suggest to use together with umi-plugin-react, see our website umi-plugin-react for more.


配置

.umirc.js

export default {
  plugins: [
    [
      'umi-plugin-react',
      {
        locale: {
          default: 'zh-CN', //默认语言 zh-CN,如果 baseSeparator 设置为 _,则默认为 zh_CN
          baseNavigator: true, // 为true时,用navigator.language的值作为默认语言
          antd: true, // 是否启用antd的<LocaleProvider />
          baseSeparator: '-', // 语言默认分割符 -
        },
      },
    ],
  ],
};

Other: You can setDefaultLocal in src/app.js

export const locale = {
  default: 'en-US', //默认语言 zh-CN,如果 baseSeparator 设置为 _,则默认为 zh_CN
};

目录及约定

.
├── dist/
├── mock/
└── src/
    ├── layouts/index.js
    ├── pages/
    └── locales               // 多语言文件存放目录,里面的文件会被umi自动读取
        ├── zh-CN.js
        └── en-US.js
├── .umirc.js
├── .env
└── package.json

如果.umirc.js里配置了singular: truelocales要改成locale

多语言文件约定

多语言文件的命名规范:<lang><分割符(通过 baseSeparator 配置)><COUNTRY>.{ts,js,json}

多语言文件的内容规范:键-值组成的字面量,如下:

zh-CN.js

export default {
  WELCOME_TO_UMI_WORLD: '{name},欢迎光临umi的世界',
};

en-US.js

export default {
  WELCOME_TO_UMI_WORLD: "{name}, welcome to umi's world",
};

支持多格式的语言文件

支持 ts、js 和 json 格式的语言文件。

zh-CN.js, zh-CN.ts

export default {
  WELCOME_TO_UMI_WORLD: '{name},欢迎光临umi的世界',
};

zh-CN.json

{
  "WELCOME_TO_UMI_WORLD": "{name},欢迎光临umi的世界"
}

扩展 API

使用本插件后,你可以从 umi-plugin-locale 引入国际化相关的 API,获得关于多语言功能在编程上的便利。

import { formatMessage, setLocale, getLocale, FormattedMessage } from 'umi-plugin-locale';

// 获取指定文字的多语言版本
const formatedText = formatMessage(
  {
    id: 'WELCOME_TO_UMI_WORLD',
  },
  {
    name: '小伙子',
  },
);

console.log(formatedText === '小伙子,欢迎光临umi的世界');

// 设置为 en-US
setLocale('en-US');

// 获取当前语言
console.log(getLocale() === 'en-US');

// 渲染一个文字标签
function Example() {
  return <FormattedMessage id="WELCOME_TO_UMI_WORLD" values={{ name: '小伙子' }} />;
}

Current Tags

  • 2.11.7                                ...           latest (4 years ago)
  • 2.10.0-beta.2                                ...           next (7 years ago)

105 Versions

  • 2.11.7                                ...           4 years ago
  • 2.11.6                                ...           6 years ago
  • 2.11.5                                ...           6 years ago
  • 2.11.4                                ...           6 years ago
  • 2.11.3                                ...           6 years ago
  • 2.11.2                                ...           6 years ago
  • 2.11.1                                ...           7 years ago
  • 2.11.0                                ...           7 years ago
  • 2.10.1                                ...           7 years ago
  • 2.10.0                                ...           7 years ago
  • 2.10.0-beta.2                                ...           7 years ago
  • 2.10.0-beta.1                                ...           7 years ago
  • 2.9.13                                ...           7 years ago
  • 2.9.12                                ...           7 years ago
  • 2.9.11                                ...           7 years ago
  • 2.9.10                                ...           7 years ago
  • 2.9.9                                ...           7 years ago
  • 2.9.8                                ...           7 years ago
  • 2.9.7                                ...           7 years ago
  • 2.9.6                                ...           7 years ago
  • 2.9.5                                ...           7 years ago
  • 2.9.4                                ...           7 years ago
  • 2.9.3                                ...           7 years ago
  • 2.9.2                                ...           7 years ago
  • 2.9.1                                ...           7 years ago
  • 2.9.0                                ...           7 years ago
  • 2.8.3                                ...           7 years ago
  • 2.8.2                                ...           7 years ago
  • 2.8.1                                ...           7 years ago
  • 2.8.0                                ...           7 years ago
  • 2.8.0-beta.4                                ...           7 years ago
  • 2.8.0-beta.3                                ...           7 years ago
  • 2.8.0-beta.2                                ...           7 years ago
  • 2.8.0-beta.1                                ...           7 years ago
  • 2.7.0                                ...           7 years ago
  • 2.6.2                                ...           7 years ago
  • 2.6.1                                ...           7 years ago
  • 2.6.0                                ...           7 years ago
  • 2.5.0                                ...           7 years ago
  • 2.4.1                                ...           7 years ago
  • 2.4.0                                ...           7 years ago
  • 2.3.3                                ...           7 years ago
  • 2.3.2                                ...           7 years ago
  • 2.3.1                                ...           7 years ago
  • 2.3.0                                ...           7 years ago
  • 2.3.0-beta.12                                ...           7 years ago
  • 2.2.3                                ...           7 years ago
  • 2.3.0-beta.11                                ...           7 years ago
  • 2.3.0-beta.10                                ...           7 years ago
  • 2.3.0-beta.9                                ...           7 years ago
  • 2.3.0-beta.8                                ...           7 years ago
  • 2.3.0-beta.7                                ...           7 years ago
  • 2.3.0-beta.6                                ...           7 years ago
  • 2.3.0-beta.5                                ...           7 years ago
  • 2.3.0-beta.4                                ...           7 years ago
  • 2.3.0-beta.3                                ...           7 years ago
  • 2.3.0-beta.2                                ...           7 years ago
  • 2.2.2                                ...           7 years ago
  • 2.2.1                                ...           7 years ago
  • 2.2.0                                ...           7 years ago
  • 2.2.0-beta.9                                ...           7 years ago
  • 2.2.0-beta.8                                ...           7 years ago
  • 2.2.0-beta.7                                ...           7 years ago
  • 2.2.0-beta.6                                ...           7 years ago
  • 2.2.0-beta.5                                ...           7 years ago
  • 2.2.0-beta.4                                ...           7 years ago
  • 2.2.0-beta.3                                ...           7 years ago
  • 2.2.0-beta.2                                ...           8 years ago
  • 2.2.0-beta.1                                ...           8 years ago
  • 2.1.2-beta.3                                ...           8 years ago
  • 2.1.2-beta.2                                ...           8 years ago
  • 2.1.1                                ...           8 years ago
  • 2.1.0                                ...           8 years ago
  • 2.1.0-beta.1                                ...           8 years ago
  • 2.0.0                                ...           8 years ago
  • 2.0.0-rc.1                                ...           8 years ago
  • 2.0.0-beta.21                                ...           8 years ago
  • 2.0.0-beta.20                                ...           8 years ago
  • 2.0.0-beta.19                                ...           8 years ago
  • 2.0.0-beta.18                                ...           8 years ago
  • 2.0.0-beta.17                                ...           8 years ago
  • 2.0.0-beta.16                                ...           8 years ago
  • 2.0.0-beta.15                                ...           8 years ago
  • 2.0.0-beta.14                                ...           8 years ago
  • 2.0.0-beta.13                                ...           8 years ago
  • 2.0.0-beta.12                                ...           8 years ago
  • 2.0.0-beta.11                                ...           8 years ago
  • 2.0.0-beta.10                                ...           8 years ago
  • 2.0.0-beta.9                                ...           8 years ago
  • 2.0.0-beta.8                                ...           8 years ago
  • 2.0.0-beta.7                                ...           8 years ago
  • 2.0.0-beta.6                                ...           8 years ago
  • 2.0.0-beta.5                                ...           8 years ago
  • 2.0.0-beta.4                                ...           8 years ago
  • 2.0.0-beta.3                                ...           8 years ago
  • 2.0.0-beta.2                                ...           8 years ago
  • 2.0.0-beta.1                                ...           8 years ago
  • 1.0.1                                ...           8 years ago
  • 1.0.0                                ...           8 years ago
  • 0.0.2                                ...           8 years ago
  • 0.0.1                                ...           8 years ago
  • 0.0.1-beta.4                                ...           8 years ago
  • 0.0.1-beta.3                                ...           8 years ago
  • 0.0.1-beta.2                                ...           8 years ago
  • 0.0.1-beta.1                                ...           8 years ago
Downloads
Today 1
This Week 1
This Month 1
Last Day 0
Last Week 0
Last Month 69
Dependencies (9)
Dev Dependencies (0)
None

Copyright 2013 - present © cnpmjs.org | Home |