Skip to content

Форматирование

useFormat() предоставляет локале-зависимое форматирование через нативные API Intl. Все форматтеры автоматически используют текущую активную локаль и обновляются при её переключении.

ts
import { useFormat } from 'vue-i18n-kit'

const { formatDate, formatNumber, formatCurrency } = useFormat()

Форматирование дат (formatDate)

formatDate(value, options?)

ts
// value: Date | number (timestamp) | string (ISO)
// options: Intl.DateTimeFormatOptions

formatDate(new Date()) // '28.03.2026'  (ru)
formatDate(new Date(), { dateStyle: 'long' }) // '28 марта 2026 г.'  (ru)
formatDate(new Date(), { dateStyle: 'long' }) // 'March 28, 2026'  (en)
formatDate(new Date(), { hour: '2-digit', minute: '2-digit' }) // '19:45'

Форматирование чисел (formatNumber)

formatNumber(value, options?)

ts
formatNumber(1_234_567.89) // '1 234 567,89'  (ru)
formatNumber(1_234_567.89) // '1,234,567.89'  (en)
formatNumber(0.42, { style: 'percent' }) // '42 %'

Форматирование валют (formatCurrency)

formatCurrency(value, currency, options?)

ts
// currency: ISO 4217 код (USD, EUR, RUB, ...)

formatCurrency(1999.99, 'USD') // '$1,999.99'   (en)
formatCurrency(1999.99, 'EUR') // '1 999,99 €'  (ru)
formatCurrency(1999, 'USD', { minimumFractionDigits: 0 }) // '$1,999'