web-standards-ru / new

Новый сайт «Веб-стандартов»
https://new.web-standards.ru/
39 stars 17 forks source link

Вынести функцию для красивой даты #71

Closed pepelsbey closed 5 years ago

pepelsbey commented 5 years ago

Ведь beautyDate может пригодиться где-то ещё, кроме как для вывода статей. Но тут нужно понимать архитектуру Gatsby и как правильно всё провернуть.

@langovoi, возьмёшься?

pepelsbey commented 5 years ago

Возможно, стоит её отрефакторить по дороге, чтобы можно было и такое вывести красиво:

    Место: Санкт-Петербург, Россия
    Начало: 1/24/2019, 6:30:00 PM
    Конец: 1/24/2019, 10:00:00 PM
ishpagin commented 5 years ago

могу написать для нового формата даты, а вы перенесете в нужное место

langovoi commented 5 years ago

На самом деле нужно от него избавиться, а во всех статьях даты исправить на валидный (чтобы они были по ISO 8601, при получений из GraphQL), тогда можно везде использовать new Date(dateString).toLocaleDateString

langovoi commented 5 years ago

toLocaleDateString часть спеки Intl, для интернационализации, которая использует CLDR под капотом.

ishpagin commented 5 years ago

На самом деле нужно от него избавиться, а во всех статьях даты исправить на валидный (чтобы они были по ISO 8601, при получений из GraphQL), тогда можно везде использовать new Date(dateString).toLocaleDateString

Предлагаете к каждому вызову прибавлять date.toLocaleDateString('ru-RU', { day: 'numeric', month: 'long', year: 'numeric', });

?

langovoi commented 5 years ago

Предлагаете к каждому вызову прибавлять

Только в местах, где нужно отформатировать дату.

ishpagin commented 5 years ago

Предлагаете к каждому вызову прибавлять

Только в местах, где нужно отформатировать дату.

Как я понял сейчас ее бьютить везде планируют, для этого эта функция - типа обёртки

langovoi commented 5 years ago

Эта функция делает объект Date из строки вида YYYY.MM.DD, а потом вызывает toLocaleDateString.

В каждом месте вывода могут быть свои правила форматирования (только дата, дата и время, дата с месяцем текстом и тп), за это отвечают параметры передаваемые в toLocaleDateString

pepelsbey commented 5 years ago

Передумали.