Skeleton

分类:

other

日期:

2022-1-23

标签:

chakra

Skeleton is used to display the loading state of some components.

Import#

import { Skeleton, SkeletonCircle, SkeletonText } from '@chakra-ui/react';

Usage#

You can use it as a standalone component.

<Stack>
<Skeleton height="20px" />
<Skeleton height="20px" />
<Skeleton height="20px" />
</Stack>

Or to wrap another component to take the same height and width.

<Skeleton>
<div>contents wrapped</div>
<div>won't be visible</div>
</Skeleton>

Useful when fetching remote data.

import { Box } from '@chakra-ui/react';
function Card() {
const { data, loading, error } = useRemoteData();
if (error) return <Box children="error" />;
return (
<Box>
<Skeleton isLoaded={!loading}>
<Heading>{data.title}</Heading>
</Skeleton>
</Box>
);
}

Circle and Text Skeleton#

<Box padding="6" boxShadow="lg" bg="white">
<SkeletonCircle size="10" />
<SkeletonText mt="4" noOfLines={4} spacing="4" />
</Box>

Skeleton color#

You can change the animation color with startColor and endColor.

<Skeleton startColor="pink.500" endColor="orange.500" height="20px" />

Skipping the skeleton when content is loaded#

You can prevent the skeleton from rendering using the isLoaded prop.

<Skeleton isLoaded>
<span>Chakra ui is cool</span>
</Skeleton>

Props#

colorScheme

Color Schemes Skeleton

(string & {})

endColor

The color at the animation end

string

fadeDuration

The fadeIn duration in seconds

number
0.4

isLoaded

If true, it'll render its children with a nice fade transition

boolean

size

Sizes Skeleton

string

speed

The animation speed in seconds

number
0.8

startColor

The color at the animation start

string

variant

Variants Skeleton

string
footer logo

© 2022 Designed with chakra ui. Powered by contentlayerjs and nextjs etc. All rights reserved

TwitterYouTubeGithub