Как создать momentLocaleData.firstDayOfWeek() в люксоне?

В данный момент вы можете позвонить:

momentLocaleData.firstDayOfWeek()

Возможно ли получить такую ​​же функциональность в Luxon?

1 ответ

Решение

Боюсь, что в последнем варианте (1.3.3), это невозможно, так как документация гласит:

Базовая интернационализация. Luxon не имеет интернационализированных строк в своем коде; вместо этого он опирается на реализацию Intl API хостов. Это включает в себя очень удобный toLocaleString. Большинство браузеров и последних версий Node поддерживают это.

Более того, используя Luxon, вы всегда получаете понедельник в качестве первого дня недели, как вы можете видеть в следующем фрагменте:

// Luxon
const DateTime = luxon.DateTime;
console.log( DateTime.local().setLocale('fr-CA').startOf('week').toISO() );
// Moment.js
console.log( moment().locale('fr-ca').startOf('week').format() );
<script src="https://moment.github.io/luxon/global/luxon.min.js"></script>
<script src="https://cdnjs.cloudflare.com/ajax/libs/moment.js/2.22.2/moment-with-locales.min.js"></script>

Обратите внимание, что нет'week'параметр вstartOf документы:

"Установите" этот DateTime на начало единицы времени.

Params:

Name    Type    Attribute   Description
unit    string              The unit to go to the beginning of. Can be 'year', 'month', 'day', 'hour', 'minute', 'second', or 'millisecond'.
Другие вопросы по тегам