AI翻訳通知

このドキュメントはAIによって翻訳されました。正確な情報については英語版をご参照ください。

ctx.i18n

現在のコンテキストの i18n インスタンスです。言語の読み取りや切り替えに使用します。テキストの翻訳には一貫して ctx.t() を使用してくださいctx.i18n.t は使用しないでください。

適用シーン

すべての RunJS 実行環境(JSBlock、JSField、JSItem、JSColumn、ワークフロー、連動ルールなど)で ctx.i18n を使用できます。

型定義

interface i18n: {
  language: string;
  changeLanguage(lng: string): Promise<any>;
}

常用プロパティ

プロパティ説明
languagestring現在アクティブな言語コード(例:ja-JPen-USzh-CN

常用メソッド

changeLanguage(lng)

現在の言語を切り替えます。

引数説明
lngstring対象の言語コード(例:'en-US''ja-JP''zh-CN'

戻り値Promise<any>。言語の切り替えが完了した後に resolve されます。

現在の言語を読み取る

const lang = ctx.i18n.language;
// 'ja-JP' | 'en-US' | 'zh-CN' | ...
if (lang.startsWith('ja')) {
  ctx.render(ctx.t('日本語インターフェース'));
} else {
  ctx.render(ctx.t('English UI'));
}

言語を切り替える

// 英語に切り替え
await ctx.i18n.changeLanguage('en-US');

// 日本語に切り替え
await ctx.i18n.changeLanguage('ja-JP');

言語切り替えボタン

const { Button } = ctx.libs.antd;
const isJa = ctx.i18n.language.startsWith('ja');
ctx.render(
  <Button onClick={async () => {
    await ctx.i18n.changeLanguage(isJa ? 'en-US' : 'ja-JP');
  }}>
    {ctx.t(isJa ? 'Switch to English' : '日本語に切り替え')}
  </Button>,
);

注意事項

  • 翻訳テキスト:一貫して ctx.t() を使用してください。ctx.i18n.t は使用しないでください。

関連情報

  • ctx.t():テキストを翻訳します。一貫してこのメソッドを使用してください。