Skeleton
Набор компонентов для создания скелетов загрузки (placeholders).
Тип анимации
Тип анимации задаётся с помощью свойства animationType.
| Значение | Описание |
|---|---|
shimmer | Бегущий градиент (по умолчанию) |
pulse | Пульсация фона |
- shimmer
- pulse
LineSkeleton
Быстрый старт
Props
RectSkeleton
Быстрый старт
Props
TextSkeleton
Быстрый старт
Props
withSkeleton
HOC withSkeleton позволяет применить анимацию скелетона к любому компоненту.
При skeleton={true} заменяется фоновый цвет компонента, добавляется градиент, а текст становится прозрачным.
Быстрый старт
Доступность
При использовании withSkeleton необходимо воспользоваться атрибутами WAI ARIA. Пример с кнопкой:
import React, { useState } from 'react';
import { Button, withSkeleton } from '@salutejs/plasma-b2c';
const ButtonSkeleton = withSkeleton(Button);
export default function App() {
const [skeleton, setSkeleton] = useState(false);
return (
<ButtonSkeleton
type="button"
text={skeleton ? 'Загрузка' : 'Нажмите'}
skeleton={skeleton}
aria-busy={skeleton}
onClick={() => setSkeleton((prevValue) => !prevValue)}
/>
);
}
При skeleton={true} и aria-busy={true} screen-reader оповещает пользователя о соответствующем статусе компонента.