@qor/helpers
Даты
Константы форматов дат и парсинг времени из API.
DATE_FORMATS
Константы форматов дат для использования с dayjs.
import dayjs from 'dayjs'
dayjs().format(DATE_FORMATS.DISPLAY) // "26.01.2025"
Доступные форматы
| Константа | Формат | Пример |
|---|---|---|
DATE_FORMATS.DISPLAY | DD.MM.YYYY | 26.01.2025 |
DATE_FORMATS.DISPLAY_SHORT | DD.MM.YY | 26.01.25 |
DATE_FORMATS.API | YYYY-MM-DD | 2025-01-26 |
DATE_FORMATS.DATETIME | DD.MM.YYYY HH:mm | 26.01.2025 14:30 |
DATE_FORMATS.DATETIME_SHORT | DD.MM.YY HH:mm | 26.01.25 14:30 |
DATE_FORMATS.DATETIME_FULL | DD.MM.YYYY HH:mm:ss | 26.01.2025 14:30:45 |
DATE_FORMATS.TIME | HH:mm | 14:30 |
DATE_FORMATS.TIME_FULL | HH:mm:ss | 14:30:45 |
DATE_FORMATS.MONTH_YEAR | MMMM YYYY | Январь 2025 |
DATE_FORMATS.DAY_MONTH | D MMM | 26 янв |
Использование
<script setup>
import dayjs from 'dayjs'
const order = ref({ created_at: '2025-01-26T14:30:00Z' })
const displayDate = computed(() =>
dayjs(order.value.created_at).format(DATE_FORMATS.DATETIME)
)
</script>
<template>
<p>Создан: {{ displayDate }}</p>
<!-- Создан: 26.01.2025 14:30 -->
</template>
parseServerTime
Парсит время с сервера, учитывая что сервер отдаёт UTC.
parseServerTime(serverTime: string): Date
Примеры
parseServerTime('2025-01-25T14:30:00') // Date (UTC)
parseServerTime('2025-01-25T14:30:00Z') // Date (UTC)
parseServerTime('2025-01-25T14:30:00+05:00') // Date (с offset)
Если в строке нет указания таймзоны (Z или +/-HH:MM), функция автоматически добавляет Z, считая что сервер отдаёт UTC.
Использование
const serverDate = parseServerTime(order.created_at)
const localTime = dayjs(serverDate).format(DATE_FORMATS.DATETIME)