Библиотека Ant Design предоставляет широкий набор утилит, которые упрощают разработку интерфейсов на JavaScript и React. Эти утилиты можно разделить на несколько категорий: стиль, форматирование данных, управление состоянием и вспомогательные функции компонентов. Их использование позволяет сократить код и повысить читаемость приложений.
ConfigProviderConfigProvider позволяет централизованно управлять
настройками всей библиотеки Ant Design в приложении:
import { ConfigProvider, Button } from 'antd';
import ruRU from 'antd/es/locale/ru_RU';
Ключевые моменты:
locale задаёт локализацию компонентов.prefixCls позволяет изменять префикс классов, что
полезно для интеграции с CSS-модулями или сторонними стилями.ConfigProvider можно менять тему приложения
(light/dark) и другие глобальные настройки.Ant Design включает утилиты для работы с датами, валютой и числами.
Компонент Statistic и утилита
Intl.NumberFormat позволяют создавать удобные числовые
форматы:
import { Statistic } from 'antd';
precision определяет количество знаков после
запятой.valueStyle позволяет напрямую задавать стили
значения.Для работы с датами Ant Design часто интегрируется с
moment.js или dayjs:
import dayjs from 'dayjs';
import { DatePicker } from 'antd';
defaultValue принимает объект dayjs или
moment.ConfigProvider.Утилиты Ant Design для форм помогают организовать валидацию, сброс и связывание данных с компонентами.
import { Form, Input, Button } from 'antd';
const [form] = Form.useForm();
Особенности работы с формами:
Form.useForm() создаёт объект формы для управления
состоянием.form.validateFields() выполняет проверку всех
полей.Form.Item связывает компонент с именем поля и правилами
валидации.Ant Design предоставляет утилиты для создания модальных окон, уведомлений и сообщений, которые упрощают динамическое взаимодействие с пользователем.
import { Modal, Button } from 'antd';
const showModal = () => {
Modal.info({
title: 'Информация',
content: 'Это информационное сообщение.',
});
};
Modal.info, Modal.success,
Modal.error, Modal.warning создают стандартные
окна.import { notification, message } from 'antd';
// Notification
notification.open({
message: 'Уведомление',
description: 'Подробности уведомления здесь.',
});
// Message
message.success('Операция успешно выполнена');
notification создаёт окна с более сложным
содержанием.message используется для кратких всплывающих
уведомлений.Ant Design предлагает утилиты для быстрого построения сеток:
import { Row, Col } from 'antd';
Левая колонка
Правая колонка
gutter задаёт расстояние между колонками.span указывает, какую часть сетки занимает колонка (из
24).xs, sm, md,
lg, xl, можно задавать адаптивное поведение
колонок.Ant Design предоставляет встроенные хуки для работы с компонентами:
useBreakpoint — определяет текущий размер экрана.import { Grid } from 'antd';
const { useBreakpoint } = Grid;
const screens = useBreakpoint();
console.log(screens.md); // true, если экран >= md
useForm — для управления формами
(Form.useForm()).useNotification — создание уведомлений через хуки без
глобальных методов.АнтДизайн включает библиотеку иконок @ant-design/icons и
утилиты для их рендеринга:
import { SmileOutlined } from '@ant-design/icons';
Icon.createFromIconfontCN.Для больших приложений важно правильное использование утилит Ant Design:
React.lazy() и
Suspense.ConfigProvider для глобальных настроек
вместо повторного конфигурирования.React.memo).Эти практики позволяют сократить нагрузку на DOM и ускорить рендеринг интерфейса.