簡體   English   中英

全球化版本1.2.3-根/后備文化

[英]Globalize Version 1.2.3 - root/fallback Culture

我使用的是當前版本1.2.3,並且希望使用此處描述的功能: https : //github.com/globalizejs/globalize/blob/6d3a5a57c56fd0afb93e20340905a435d1650341/doc/api/message/load-translation.md#example

對於未在loadMessages方法中定義/初始化瀏覽器區域性的情況,我需要繼承翻譯以具有后備區域性。 例如:

Globalize.loadMessages({ root: { hello: "Hi!" }, de: { hello: "Moin!" } });

這是我期望的:

Globalize( "de-DE" ).formatMessage( "hello" );

“錢!”

Globalize( "fr" ).formatMessage( "hello" );

“嗨!” (倒退)

我怎么能意識到這一點?

簡短答案

它缺少Globalize.loadMessages({fr: {}}); 空消息告訴全球化fr是有效的捆綁包。

更長的答案

該文檔示例工作正常。 注意:在此處使用v1.2.3文檔: https : //github.com/globalizejs/globalize/blob/1.2.3/doc/api/message/load-messages.md

為了測試我做了:

npm install globalize cldr-data

然后:

var Globalize = require( "globalize" );
Globalize.load( require( "cldr-data" ).entireSupplemental() );

Globalize.loadMessages({
  root: {
    amen: "Amen"
  },
  de: {},
  en: {},
  "en-GB": {},
  fr: {},
  pt: {
    amen: "Amém"
  },
  "pt-PT": {}
});

Globalize( "de" ).formatMessage( "amen" );
// > "Amen"

Globalize( "en" ).formatMessage( "amen" );
// > "Amen"

Globalize( "en-GB" ).formatMessage( "amen" );
// > "Amen"

Globalize( "fr" ).formatMessage( "amen" );
// > "Amen"

Globalize( "pt-PT" ).formatMessage( "amen" );
// > "Amém"

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM