Библиотека Quasar предоставляет мощные возможности для форматирования данных, упрощая отображение чисел, валют, дат, времени и текста в удобном для пользователя виде. Основной инструмент для этого — набор утилитных функций и компонентов, встроенных в фреймворк. Использование этих инструментов позволяет стандартизировать представление данных в приложении и снизить необходимость писать собственные вспомогательные функции.
Quasar включает модуль Quasar.utils,
который содержит несколько подмодулей, в частности:
date — функции для работы с датами и
временемnumber — функции для работы с числами,
процентами и валютамиformat — функции для строкового
форматирования и приведения данных к нужному видуПример подключения утилит:
import { date, number } from 'quasar';
number.formatNumberПозволяет привести число к читаемому виду с разделителями тысяч и настройкой количества десятичных знаков:
import { number } from 'quasar';
const value = 1234567.891;
const formatted = number.formatNumber(value, {
decimals: 2,
decimalSeparator: '.',
thousandSeparator: ','
});
// Результат: "1,234,567.89"
Параметры:
decimals — количество знаков после запятойdecimalSeparator — символ, разделяющий целую и дробную
частьthousandSeparator — разделитель тысячnumber.formatCurrencyИспользуется для отображения чисел в денежном формате:
const price = 123456.789;
const formattedPrice = number.formatCurrency(price, {
prefix: '$',
decimals: 2,
decimalSeparator: '.',
thousandSeparator: ','
});
// Результат: "$123,456.79"
Опции:
prefix / suffix — символ валютыdecimals — количество десятичных знаковdecimalSeparator — символ десятичной точкиthousandSeparator — символ разделителя тысячnumber.formatPercentПозволяет форматировать числа в проценты:
const ratio = 0.1234;
const percent = number.formatPercent(ratio, { decimals: 1 });
// Результат: "12.3%"
Подмодуль date предоставляет функции
для гибкого отображения времени и дат.
date.formatDateПрименяется для преобразования объекта Date или строки в
указанный формат:
import { date } from 'quasar';
const now = new Date();
const formatted = date.formatDate(now, 'YYYY-MM-DD HH:mm:ss');
// Результат: "2026-03-20 15:45:12"
Форматные строки:
YYYY — годMM — месяц с ведущим нулемDD — день с ведущим нулемHH — часы в 24-часовом форматеmm — минутыss — секундыdate.addToDate и
date.getDateDiffПозволяют легко добавлять или вычитать временные интервалы и вычислять разницу между датами:
const nextWeek = date.addToDate(now, { days: 7 });
const diff = date.getDateDiff(nextWeek, now, 'days'); // Результат: 7
Параметры:
unit — единицы измерения (days,
months, years, hours,
minutes, seconds)Quasar включает ряд функций для работы с текстом:
format.capitalize — делает первую
букву строки заглавнойimport { format } from 'quasar';
const text = 'quasar framework';
const capitalized = format.capitalize(text);
// Результат: "Quasar framework"
format.upperCase и
format.lowerCase — преобразование
регистра
format.truncate — сокращение строки
до указанной длины с добавлением многоточия:
const longText = 'Это очень длинный текст для отображения';
const shortText = format.truncate(longText, { length: 20, ellipsis: '...' });
// Результат: "Это очень длинный..."
Многие компоненты Quasar напрямую поддерживают форматирование через пропсы и слоты. Например:
<q-input
v-model="phone"
mask="(###) ###-####"
fill-mask
label="Телефон"
/>
mask задает шаблон вводаfill-mask автоматически подставляет разделителиКомпонент QTable поддерживает кастомные
рендереры через слот body-cell:
<q-table
:rows="rows"
:columns="columns"
>
<template v-slot:body-cell-price="props">
{{ number.formatCurrency(props.value, { prefix: '$', decimals: 2 }) }}
</template>
</q-table>
Такой подход позволяет централизованно контролировать отображение чисел и дат в таблицах без изменения исходных данных.
Quasar интегрируется с локальными настройками через
Quasar.lang, что позволяет автоматически
форматировать даты и числа в зависимости от выбранного языка:
import { Quasar } from 'quasar';
import langRu from 'quasar/lang/ru';
Quasar.lang.set(langRu);
После установки локали функции date.formatDate и
числовые методы будут использовать правила русского языка для
разделителей, формата дат и единиц измерения.
Quasar.lang для
корректного отображения дат, времени и валют.number и date с пользовательскими фильтрами
или вычисляемыми свойствами.Функции и компоненты Quasar обеспечивают гибкое и мощное форматирование данных, позволяя создавать профессиональные интерфейсы с минимальным количеством кода.