रिएक्ट बिल्ड में ऑटोमैटिक कैश रीसेट

आपको पहले से पता होना चाहिए कि ब्राउज़रों में स्टैटिक कैश की समस्या होती है। इस समस्या का सार यह है कि प्रदर्शन बढ़ाने के लिए ब्राउज़र स्टाइल शीट, स्क्रिप्ट और छवि फाइलों को कैश करता है।

इसका मतलब है कि यदि आप होस्टिंग पर अपनी स्क्रिप्ट या स्टाइल में कुछ बदलते हैं, तो परिवर्तन केवल साइट के नए आगंतुकों को ही दिखाई देंगे। पुराने आगंतुक, जो पहले ही साइट पर आ चुके हैं, कोड का कैश किया गया संस्करण देखेंगे। यह, निश्चित रूप से, अस्वीकार्य है।

सौभाग्य से, रिएक्ट में यह समस्या स्वचालित रूप से हल हो जाती है। इसका समाधान यह है कि बिल्ड की फाइलों के नाम और एक्सटेंशन के अलावा, एक यादृच्छिक स्ट्रिंग होती है जिसे हैश कहा जाता है। यह हैश फाइल की सामग्री के अनुरूप होता है। इसका मतलब है कि फाइल में कोड बदलने पर, उसके नाम में हैश भी बदल जाएगा। इस तरह, ब्राउज़र सोचेगा कि यह एक नई फाइल है और इसे डाउनलोड कर लेगा।

हम फाइलों के हैश को index.html में उनके जुड़े होने पर देख सकते हैं:

index.html<script defer="defer" src="/static/js/main.3dd63bcb.js"></script>
<link href="/static/css/main.f855e6bc.css" rel="stylesheet">
Задание 1

प्रोजेक्ट की बिल्ड बनाएं। बिल्ड में फाइलों के साथ कौन से हैश जुड़े हैं, इसका अध्ययन करें।

Задание 2

अपने प्रोजेक्ट का कोड बदले बिना बिल्ड बनाएं। सुनिश्चित करें कि फाइलों के हैश नहीं बदलेंगे।

Задание 3

अपने प्रोजेक्ट का कोड बदलें। बिल्ड बनाएं। सुनिश्चित करें कि फाइलों के हैश बदल जाएंगे।