我试图显示一个打开屏幕图像,将持续5秒,一旦应用程序加载。我正在使用setTimeout,但它不会工作。有人有办法吗?
import OpeningScreen from '../../../../../../assets/images/OPENING_SCREEN.png';
function ProgressComponent() {
const [isOpeningScreenVisible, setOpeningScreenVisible] = useState(true)
setTimeout(() => {
setOpeningScreenVisible(false);
}, 5000);
return (
<div
style={{
display: 'flex',
alignItems: 'center',
justifyContent: 'center',
width: '100%',
height: '100%',
}}
>
{isOpeningScreenVisible && <img src={OpeningScreen} className="image" />}
</div>
);
}
export default ProgressComponent;```
4条答案
按热度按时间dy1byipe1#
尝试更改img src。
从
到这个
niwlg2el2#
我已经测试了你的代码,它工作正常.试试这些:
g9icjywg3#
您可以更新代码以使用本机事件,这样就不必重新发明轮子。
我会怎么做:
无论如何,这不是最好的方法,你能做的最好的就是使用css过渡来动画化一个开始的屏幕
vtwuwzda4#
试试这个,它应该可以工作,因为它仍然在我的一个项目中工作
基本的想法是
<img src={openingScreen}/>
将在屏幕上,直到React构建文件加载到网站上。添加<div className="App" id="app"></div>
内的一切,一旦他们加载的图像将褪色。