मैं सच में कर रहा हूँ के लिए नए ReactJs, जे एस और मूल रूप से सभी के वेब विकास. मैं कोशिश कर रहा बनाने के लिए एक एकल पृष्ठ पोर्टफोलियो वेबसाइट का उपयोग कर ReactJS और कोशिश करना चाहता था कुछ और अधिक उन्नत तकनीकों जैसे हुक का उपयोग कर. मैं चाहता था बनाने के लिए एक सरल प्रभाव है, जहां एक एनीमेशन नाटकों में एक बार (जब एक उपयोगकर्ता पहले लॉग में मेरी वेबसाइट के लिए), तो वे कर रहे हैं लाया करने के लिए मुख्य साइट है । सभी संसाधनों मैं ऑनलाइन पाया करने के लिए संबंधित लोड हो रहा है स्क्रीन whilst से डेटा दिलकश के लिए एक एपीआई. यहाँ है मेरे कोड के लिए लोड हो रहा है स्क्रीन:
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 में गलत करने के लिए 18s जो है जब एनीमेशन बंद हो जाता है । के रूप में आप देख सकते हैं मैं रेंडर एनीमेशन केवल अगर लोड हो रहा है सच है, का उपयोग कर एक त्रिगुट ऑपरेटर, एक बार फिर लोड हो रहा है सेट करने के लिए false है तो बातिल हो जाता है प्रदर्शित किया जाता है । मेरे 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;
(क्षमा याचना के लिए भयानक JSX). इस मुद्दे को मैं कर रहा हूँ यह है कि दोनों नेवबार और लोड हो रहा है स्क्रीन भार एक ही समय पर. मैं अनिश्चित हूँ कैसे छिपाने के लिए मेरे सभी अन्य घटकों तक एनिमेशन समाप्त हो गया है. मैं सब कुछ कोशिश की है waaay करने के लिए जटिल है और वास्तव में नहीं लग रहे हो पर बहुत ही कुशल । मैं किसी भी मदद की सराहना करते हैं धन्यवाद!