Как получить доступ к данным о культуре в globalize.js V1.0.0

Я перехожу с Globalize.js V0.0.1 на V1.0.0. В V0.0.1 было возможно получить доступ к загруженным данным культуры, как вы можете видеть ниже. Как я могу получить доступ к данным с текущей версией 1.0.0.

var culture = Globalize.culture("en-US");
culture.calendar.months.names; // returns: ["January", "February", "March", ...
culture.calendar.days.names;  // returns: ["Sunday", "Monday", "Tuesday", ... 

Заранее большое спасибо!

1 ответ

Решение

В Globalize 0.x содержимое i18n было смешано / встроено в библиотеку. Теперь в Globalize 1.x мы используем внешний CLDR.

К CLDR можно получить доступ через https://github.com/unicode-cldr/, или вы можете установить его локально с помощью:

$ npm install cldr-data

Глобализация, скрытая внутри, перебирает данные CLDR с помощью Cldrjs. Вы можете использовать его независимо от Globalize для прохождения данных CLDR, например:

$ npm install cldr-data cldrjs
$ node
> var Cldr = require("cldrjs");
> Cldr.load(require("cldr-data").entireSupplemental());
> Cldr.load(require("cldr-data").entireMainFor("en"));
> 
> var en = new Cldr("en");
> en.main("dates/calendars/gregorian/months/format/wide/1");
'January'
>
> // Note the "{region}" fragment is automatically substituted by the instance's
> // region subtag. See `en.attributes` for all of those variables.
> en.supplemental("currencyData/region/{region}");
[ { USN: { _tender: 'false' } },
  { USS: { _to: '2014-03-01', _tender: 'false' } },
  { USD: { _from: '1792-01-01' } } ]

Если вы уже используете Globalize, вы можете получить доступ к этим данным, используя собственный экземпляр Cldrjs (для удобства):

$ npm install globalize cldr-data
$ node
> var Globalize = require("Globalize");
> Globalize.load(require("cldr-data").entireSupplemental());
> Globalize.load(require("cldr-data").entireMainFor("en"));
> 
> var en = new Globalize("en");
> en.cldr.main("dates/calendars/gregorian/months/format/wide/1");
'January'

Более подробная информация на https://github.com/rxaviers/cldrjs и https://github.com/jquery/globalize

Просто дайте мне знать по любому вопросу.

Другие вопросы по тегам