用于客户端本地化的国际化实用程序。有关服务器端文档,请参阅 如何国际化您的插件。
安装
安装模块:
npm install @wordpress/i18n --save
此包假设您的代码将在 ES2015+ 环境中运行。如果您使用的环境对这类语言特性和 API 的支持有限或完全不支持,您应该在代码中包含 @wordpress/babel-preset-default 随附的 polyfill。
用法
import { sprintf, _n } from '@wordpress/i18n';
sprintf( _n( '%d hat', '%d hats', 4, 'text-domain' ), 4 );
// 4 hats
完整示例请参阅 区块编辑器手册中的国际化部分。
API
createI18n
创建 i18n 实例
参数
- initialData
[LocaleData< TextDomain >]: 区域设置数据配置。 - initialDomain
[TextDomain]: 应用配置的文本域。 - hooks
[Hooks]: Hooks 实现。
返回
I18n< TextDomain >: I18n 实例。
defaultI18n
I18n 的默认单例实例。
getLocaleData
按文本域返回 Jed 格式的 JSON 对象形状的区域设置数据。
相关
参数
- domain
[ string | undefined ]: 要获取数据的文本域。
返回
LocaleData: 区域设置数据。
hasTranslation
检查给定字符串(单数形式)是否有翻译。
参数
- single
string: 要查找的字符串的单数形式。 - context
string: 供翻译者使用的上下文信息。 - domain
string: 检索已翻译文本的文本域。
返回
boolean: 翻译是否存在。
isRTL
检查当前区域设置是否为 RTL(从右到左)。
RTL (Right To Left) 是一个区域设置属性,表示文本是从右向左书写。例如,he 区域设置(希伯来语)指定了从右到左。阿拉伯语(ar)是另一种常见的 RTL 书写语言。与 RTL 相反的是 LTR(从左到右),用于包括英语(en, en-US, en-GB 等)、西班牙语(es)和法语(fr)在内的其他语言。
返回
boolean: 区域设置是否为 RTL。
resetLocaleData
重置所有当前 Tannin 实例的区域设置数据,并为指定的文本域设置区域设置数据。接受 Jed 格式的 JSON 对象形状的数据。
相关
参数
- data
[LocaleData]: 区域设置数据配置。 - domain
[string | undefined]: 应用配置的文本域。
setLocaleData
按文本域将区域设置数据合并到 Tannin 实例中。接受 Jed 格式的 JSON 对象形状的数据。
相关
参数
- data
[LocaleData ]: 区域设置数据配置。 - domain
[string | undefined]: 应用配置的文本域。
sprintf
返回格式化后的字符串。
相关
参数
- format
T | TransformedText< T >: 要生成的字符串格式。 - args
DistributeSprintfArgs< T >: 应用于格式的参数。
返回
TransformedText< T >: 格式化后的字符串。
subscribe
订阅区域设置数据的变化
参数
- callback
SubscribeCallback: 订阅回调函数
返回
UnsubscribeCallback: 取消订阅回调函数
_n
根据提供的数字翻译并检索单数或复数形式。
相关
参数
- single
Single: 如果数字为单数时使用的文本。 - plural
Plural: 如果数字为复数时使用的文本。 - number
number: 用于比较以确定使用单数还是复数形式的数字。 - domain
string | undefined: 检索已翻译文本的文本域。
返回
TransformedText<Single | Plural>: 翻译后的单数或复数形式。
_nx
根据提供的数字翻译并检索单数或复数形式,并带有 gettext 上下文。
相关
参数
- single
Single: 如果数字为单数时使用的文本。 - single
Single: 如果数字为单数时使用的文本。 - plural
Plural: 如果数字为复数时使用的文本。 - number
number: 用于比较以确定使用单数还是复数形式的数字。 - context
string: 供翻译者使用的上下文信息。 - domain
[string | undefined]: 检索已翻译文本的文本域。
返回
TransformedText<Single | Plural>: 翻译后的单数或复数形式。
_x
检索带有 gettext 上下文的已翻译字符串。
相关
参数
- text
Text: 要翻译的文本。 - context
string: 供翻译者使用的上下文信息。 - domain
string | undefined: 检索已翻译文本的文本域。
返回
TransformedText<Text>: 不含管道的翻译上下文字符串。
__
检索文本的翻译。
相关
参数
- text
Text: 要翻译的文本。 - domain
string | undefined: 检索已翻译文本的文本域。
返回
TransformedText<Text>: 翻译后的文本。
为此包做出贡献
这是 Gutenberg 项目的一个独立包。该项目被组织为一个 monorepo(单体仓库)。它由多个自包含的软件包组成,每个包都有特定的用途。此 monorepo 中的包发布到 npm,并被 WordPress 以及其他软件项目使用。
要了解有关为此包或整个 Gutenberg 做出贡献的更多信息,请阅读项目的主要 贡献者指南。