मैंने अपने कोणीय ऐप के लिए एक यादृच्छिक उद्धरण जनरेटर बनाया है। घटक कोड इस तरह दिखता है:जावास्क्रिप्ट रैंडम कोट जेनरेटर बनाएं प्रति दिन एक उद्धरण उत्पन्न करें
qotd = this.quotes[Math.floor(Math.random() * this.quotes.length)];
डेटा है कि इस तरह दिखता है से खींच रही है यही कारण है कि:
quotes = [
{
quote: "Lorem ipsum dolor sit amet, consectetur adipiscing elit. Phasellus euismod magna magna, euismod tincidunt libero dignis.",
author: 'Sorato Violasa'
},
{
quote: "Nullam dignissim accumsan magna vitae rhoncus. Phasellus euismod magna magna, euismod tincidunt libero dignis.",
author: 'Vito Dignaora'
},
{
quote: "In tincidunt imperdiet augue, quis sollicitudin mi tincidunt ut.",
author: 'Hivalo Amettioa'
},
{
quote: "hasellus accumsan erat vitae enim blandit, quis euismod ipsum sollicitudin.",
author: 'Grasha Plojiva'
},
];
और फिर मेरे विचार में मैं यह कर:
<div class="quotes">
<p class="quote">
{{qotd.quote}} <br><br>
~ {{qotd.author}}
</p>
</div>
बात है, इस समय घटक फिर से लोड होने पर हर बार एक नया उद्धरण उत्पन्न करेगा, जो एकल सत्र में कई बार हो सकता है। अब मुझे एहसास होगा कि यह एक दैनिक उद्धरण जनरेटर बनाना बेहतर होगा। इसलिए तिथि बदलने पर यह केवल एक नया उद्धरण उत्पन्न करेगा। इस तरह कुछ लागू करने का सबसे आसान तरीका क्या है? यह काफी आसान सप्ताह की तारीख और दिन उत्पन्न करने के लिए है इस तरह:
date = new Date();
dayNumber = this.date.getDay();
लेकिन मैं कैसे की गणना जब क्रम में सप्ताह में परिवर्तन के दिन एक नया उदाहरण बंद आग होगा?
आप इसे क्लाइंट पर क्यों कर रहे हैं? प्रति दिन एक बार, सर्वर पर बस इसे करें। – RobG
उचित बिंदु। इससे काम बन जाएगा। लेकिन मैं अभी भी उत्सुक हूं कि क्लाइंट पक्ष पर यह कैसे करेगा। उदाहरण के लिए, उदाहरण के लिए, जब आप एक एपीआई तक पहुंच रहे थे जिसे आप पढ़ सकते थे (उद्धरण प्राप्त करने के लिए), लेकिन यह सब कुछ है। – Muirik
शायद पीआरएनजी का उपयोग करके और आज 'Math.floor (date.now()/864e5)' बीज का टाइमस्टैम्प लें। इसलिए मैं "यादृच्छिक" संख्याओं का पुनरावर्तनीय अनुक्रम उत्पन्न कर सकता हूं, जैसे कि इस ऐरे को घुमाने या सूचकांक लाने के लिए ... या कुछ सरल, जैसे 'index = (date.now()/864e5^0xa702fa)% सरणी। लंबाई ' – Thomas