Internationalization プロパティへのアクセス

範囲設定されたモジュール @salesforce/i18n から internationalization プロパティをインポートします。Lightning Web コンポーネントには、Internationalization プロパティが用意されています。これらのプロパティを使用すると、コンポーネントを世界中のユーザ、言語、通貨、タイムゾーンに適合させることができます。

単一通貨の組織の場合、Salesforce システム管理者が組織の通貨のロケール、デフォルトの言語、デフォルトのロケール、デフォルトのタイムゾーンを設定します。ユーザは個人設定ページで各自の言語、ロケール、タイムゾーンを設定できます。

Lightning 基本コンポーネントは、実行される Salesforce 組織の言語、ロケール、タイムゾーン設定に自動的に適合されます。自分のコンポーネントも適合されるように国際化するには、Internationalization プロパティを使用します。

  • internationalizationPropertyName — Internationalization プロパティを参照する名前。
  • internationalizationProperty — Internationalization プロパティ。

現在のユーザのプロパティ値が返されます。

Internationalization プロパティ説明サンプル値
lang言語en-US
dirテキストの方向ltr
locale地域en-CA
defaultCalendarロケールに基づくデフォルトのカレンダー形式Gregorian
defaultNumberingSystemロケールに基づくデフォルトの記数法latn
calendarDataユーザのロケールのカレンダー形式gregorian: {dayPeriods : {...}, days: {...}, eras: {...}, months: {...}, quarters: {...}}
currency通貨コードCAD
firstDayOfWeek週の開始曜日1
isEasternNameStyle名前が東洋式のスタイルに従うか (last name first name [middle] [suffix]) どうかを指定します。false
common.calendarData共通カレンダー形式用の補助カレンダーデータ。値は defaultCalendar で決定されます。gregorian:{calendarSystem:'solar',eras:{'0':{_end:'0-12-31'},'0':{_end:'1-01-01'}}}
common.digits数値の Unicode 文字0123456789
dateTime.shortDateFormat短い日付形式MM/dd/yyyy
dateTime.mediumDateFormat中程度の長さの日付形式MMM d, yyyy
dateTime.longDateFormat長い日付形式MMMM d, yyyy
dateTime.shortDateTimeFormat短い日時形式MM/dd/yyyy h:mm a
dateTime.mediumDateTimeFormat中程度の長さの日時形式MMM d, yyyy h:mm:ss a
dateTime.longDateTimeFormatLong スタイルの日時形式MMMM d, yyyy ‘at’ h:mm:ss a * z
dateTime.shortTimeFormat短い時間形式h:mm a
dateTime.longTimeFormat長い時間形式h:mmss a
number.currencyFormat通貨形式#, ##0.00
number.currencySymbol通貨記号$
number.decimalSeparator小数点の区切り文字.
number.exponentialSign指数記号E
number.groupingSeparator桁区切り文字,
number.infinity無限大記号
number.minusSignマイナス記号-
number.nan「Not a Number」 (非数) の文字列NaN
number.numberFormat数値の形式#, ##0.###
number.perMilleSign1000 分の 1 記号
number.percentFormatパーセント形式#, ###0%
number.percentSignパーセント記号%
number.plusSignプラス記号+
number.superscriptExponentSign上付き指数記号×
showJapaneseCalendar日付を日本の和暦の形式で表示するかどうかを指定します。false
timeZoneタイムゾーンAmerica/Los_Angeles

LWR サイトの場合、langlocale は、サイトに設定されている言語に対応付けられます。timeZone は、ユーザの個人設定ではなく、ブラウザのタイムゾーンで決定されます。 また、currencynumber.currencySymbol、および number.currencyFormat はサポートされていません。 サイトまたは組織の言語設定が更新された場合は、サイトを再公開する必要があります。

internationalization プロパティで返される値は、「Unicode Locale Data Markup Language (LDML) (Unicode ロケールデータマークアップ言語 (LDML))」で説明されている形式に対応します。たとえば、common.calendarData は、カレンダーデータの LDML 仕様に従っています。

日付の形式は、言語ごとに異なります。たとえば、米国では、2/15/19 のように月、日、年の形式が使用されます。英国では、15/2/19 のように日、月、年の形式が使用されます。

ユーザの言語に従って日付を書式設定するには、@salesforce/i18n/locale モジュールからユーザのロケールをインポートします。日付を書式設定するには、JavaScript の国際化 API を使用します。

または、lightning-formatted-date-time 基本コンポーネントを使用して日時を書式設定します。

次の例では、locale および currency プロパティを使用して、数値をローカライズされた通貨文字列に書式設定しています。

Intl.NumberFormat オブジェクトは、通貨の出力を定義します。ユーザのロケールに応じて、数値を通貨として表示し、ローカライズされた通貨記号を付与します。

または、lightning-formatted-number 基本コンポーネントを使用して、数値、通貨、パーセントを書式設定します。

Internationalization プロパティを HTML 属性にバインドするには、Internationalization プロパティを非公開プロパティとしてコンポーネントの JavaScript ファイルに保存します。ここで、lang はユーザの言語、dir は HTML でテキストが表示される方向を示します。

HTML テンプレートで値を参照するには、{property} を使用します。

関連トピック