我想实现React Loading Skeleton,我希望在状态加载后加载文本
<CardSubtitle tag="h6" className="text-muted">
Viewing time entries logged in the last 3 weeks
</CardSubtitle>
我试过这个...
import React, { useState, useEffect } from 'react';
import { CardSubtitle } from 'reactstrap';
import Skeleton from 'react-loading-skeleton';
const MyComponent = () => {
const [isLoading, setIsLoading] = useState(true);
useEffect(() => {
const timer = setTimeout(() => {
setIsLoading(false);
}, 1000);
return () => clearTimeout(timer);
}, []);
return (
<div>
<CardSubtitle tag="h6" className="text-muted">
{isLoading ? <Skeleton width={200} /> : 'Viewing time entries logged in the last 3 weeks'}
</CardSubtitle>
</div>
);
}
export default MyComponent;
……但是没有成功。整个页面一片空白。
1条答案
按热度按时间bttbmeg01#
从
3.0.0
版本开始的react-loading-skeleton
模块似乎有问题。您可以使用2.2.0
版本。使用npm安装
2.2.0
版本:或者,如果你使用yarn:
我已经创建了一个工作的example on CodeSandbox,版本为
react-loading-skeleton
的2.2.0
。在这个例子中,你可以看到如何使用
react-loading-skeleton
和 backbone 组件的默认背景颜色。希望这能有所帮助!