Types

InlineTranslationOptions

InlineTranslationOptions 类型的 API 参考

概览

InlineTranslationOptions 类型用于向内联翻译传递变量,并指定其渲染行为。 你也可以为翻译添加上下文和标识符。 它与 useGTmsg 搭配使用,用于向内联字符串翻译传递变量。

构建时翻译: useGTmsg 的翻译在构建时执行;但变量本身不会被翻译。 它们会以指定的格式插入到译文中。 请务必按照部署指南进行操作。

参考资料

参数

Prop

Type

描述

Prop描述
variables一个对象,其中的键用于指明各个值在字符串中的映射位置。
$context可选:在 variables 对象中加入 $context 变量,为内容提供上下文(用于翻译)。
$id可选:在 variables 对象中加入 $id 变量,为翻译编辑器提供用于识别的标识符。

示例

上下文

要为字符串添加上下文,我们使用 $context 属性。

Component.tsx
import { useGT } from 'gt-react';

const Component = () => {
  const t = useGT();
  return <div>{t('你好,世界!', { $context: '正式问候语' })}</div>;
};

传递变量

要在字符串中添加变量,请使用 {variable-name} 语法,其中花括号包裹变量名。

Component.tsx
import { useGT } from 'gt-react';

const Component = () => {
  const t = useGT();
  return <div>{t('你好,{username}!今天过得怎么样?', { username: 'Brian123' })}</div>;
};

使用 ICU 消息格式

gt-react 支持 ICU 消息格式,可用于对变量进行格式化。

Component.tsx
import { useGT } from 'gt-react';

const Component = () => {
  const t = useGT();
  return <div>
    { t(
      '您的账户余额:{dollars, number, ::currency/USD}!',
      {
        "dollars" : 1000000,
      }
    ) }
  </div>;
};

请参阅 ICU 消息格式文档 以获取有关 ICU 消息格式的更多信息。


说明

  • InlineTranslationOptions 用于内联字符串的翻译。
  • variables 对象向文本传递值。
  • variablesOptions 对象用于定义变量的行为。

后续步骤

  • 请参阅 useGT 以了解内联字符串翻译的更多信息。
  • 请参阅 ICU message format 以了解有关格式化 options 的更多信息。

这份指南怎么样?

InlineTranslationOptions