ローカライズ
このフレームワークでは、入力および出力コンポーネントでクライアント側ローカライズのサポートを提供します。
次の例では、デフォルトの timezone 属性を上書きする方法を示します。出力には、デフォルトで hh:mm 形式の時刻が表示されます。
1<aura:component>
2 <ui:outputDateTime value="2013-10-07T00:17:08.997Z" timezone="Europe/Berlin" />
3</aura:component>このコンポーネントは、Oct 7, 2013 2:17:08 AM と表示されます。
日時形式をカスタマイズするには、lightning:formattedDateTime を使用することをお勧めします。次の例では、init ハンドラを使用して、日時を設定します。
1<aura:component>
2 <aura:handler name="init" value="{!this}" action="{!c.doInit}"/>
3 <aura:attribute name="datetime" type="DateTime"/>
4 <lightning:formattedDateTime value="{!v.datetime}" timeZone="Europe/Berlin"
5 year="numeric" month="short" day="2-digit" hour="2-digit"
6 minute="2-digit" second="2-digit"/>
7</aura:component>1({
2 doInit : function(component, event, helper) {
3 var date = new Date();
4 component.set("v.datetime", date)
5 }
6})次の例では、MMM DD, YYYY HH:MM:SS AM の形式で表示される JavaScript の日付インスタンスを作成します。
この例の出力は <ui:outputDateTime value="{!v.datetime}" timezone="Europe/Berlin" /> と似ていますが、lightning:formattedDateTime の属性では、詳細なレベルで形式を制御できます。たとえば、MM/DD/YYYY 形式を使用して日付を表示できます。
1<lightning:formattedDateTime value="{!v.datetime}" timeZone="Europe/Berlin" year="numeric" month="numeric" day="numeric"/>さ��に、グローバル値プロバイダ $Locale を使用してロケール情報を取得できます。組織のロケール設定は、ブラウザのロケール情報より優先されます。
ロケール情報の操作
単一通貨の組織の場合、Salesforce システム管理者が組織の通貨のロケール、デフォルトの言語、デフォルトのロケール、デフォルトのタイムゾーンを設定します。ユーザは個人設定ページで各自の言語、ロケール、タイムゾーンを設定できます。
たとえば、[言語とタイムゾーン] ページでタイムゾーンを (GMT+02:00) に設定して次のコードを実行すると、28.09.2015 09:00:00 が返されます。
1<ui:outputDateTime value="09/28/2015" />$A.get("$Locale.timezone") を実行すると、タイムゾーン名 (Europe/Paris など) が返されます。詳細は、Salesforce ヘルプの「サポートされているタイムゾーン」を参照してください。
[組織情報] ページで通貨のロケールを [Japanese (Japan) - JPY] に設定して次のコードを実行すると、¥100,000 が返されます。
1<ui:outputCurrency value="100000" />同様に、組織の通貨のロケールが [Japanese (Japan) - JPY] に設定されているときに $A.get("$Locale.currency") を実行すると、"¥" が返されます。詳細は、Salesforce ヘルプの「サポートされている通貨」を参照してください。