我是真正的新ReactJs,JS和基本上所有的网络的发展。 我试图建立一个单页的投资组合的网站使用ReactJS和想尝试一些更先进的技术,例如使用挂钩。 我想创建一个简单的效果,其中一个画剧,一旦(当用户首次登录到我的网站),然后他们被带到主网站上。 所有的资源,我在网上找到的涉及加载屏幕的同时获取的数据。 这里是我的代码,用于装载屏幕:
import Typical from 'react-typical';
import "./Loading.scss";
import {useState, useEffect} from 'react';
const Loading = function Loading() {
const [loading, setLoading] = useState(false);
useEffect(() => {
setLoading(true)
setTimeout(() => {
setLoading(false)
},18000);
}, [])
return (
<div>
<h1 id="loading">
{ loading ? <Typical oop={1} wrapper = 'p'
steps={[
"Hello",
2000,
"My name is Leonard.",
3000,
"I am an aspiring developer",
3000,
"Welcome to my website!",
3000,
]} /> : null}
</h1>
</div>
);
}
我使用的是一个非常简单的反应,包谓的典型的,这提供了一个很好的画字输入在屏幕上就像一个打字机,然后被删除,那么下一位文本获得所示等。这只是循环的一次。 我已经使用的useState和useEffect挂钩与定时器setLoading false在18s这是动画时停止。 正如你可以看到我呈现的画只有如果装载的是真的,使用一个三元的操作者,然后一旦装卸设置虚假然后null得到显示。 我app.js 看起来是这样的:
import Nav from './Components/Nav';
import "./App.scss";
import Loading from './Components/Loading';
function App() {
return (
<div>
<Loading />
<main>
<Nav/>
</main>
</div>
);
}
export default App;
(抱歉可怕的代码). 这个问题我有的是,这两个航栏和装载在同一时间。 我不知道如何隐藏我的所有其他部件直到动画完成。 我的一切尝试是主要复杂的和真的似乎没有非常高效的。 我感谢所有帮助,谢谢你!