دستاویزاتموڈز

رینڈرنگ

رینڈرنگ ایک سوال کا جواب دیتا ہے: کون HTML تیار کرتا ہے، اور کب۔ Nexy کے پاس چار جوابات اور ایک ڈیفالٹ ہے۔

یقین نہیں ہے؟ رکھو ایس ایس آر کسی صفحہ کو تبھی تبدیل کریں جب آپ وجہ بتا سکیں: مواد جو شاذ و نادر ہی تبدیل ہوتا ہے (ISR)، ایک ویجیٹ جس کو براؤزر (جزیرہ) کی ضرورت ہو، یا ایپ نما نیویگیشن (CSR)۔

یہ کیسے کام کرتا ہے۔

HTML کون تیار کرتا ہے، اور کب
SSRrequestserver rendersHTMLbrowser
ISRrequestcached HTML?browser, regenerated in the background
CSRrequestdocument rendered by the serverbrowser takes over navigation
Islandsrequestserver renders the pageone widget hydrates on demand

چار موڈ

ایس ایس آر آئی ایس آر سی ایس آر جزائر
ڈیٹا پڑھا جاتا ہے۔ ہر درخواست پر ہر تخلیق نو پر براؤزر میں ہر درخواست پر
HTML سے آتا ہے سرور سرور، پھر ایک کیش پہلی دستاویز کے لیے سرور، بعد میں براؤزر سرور
JavaScript صرف جزائر کے لیے صرف جزائر کے لیے فریم ورک بنڈل صرف جزیرہ
ہائیڈریشن کوئی نہیں کوئی نہیں پوری دستاویز جزیرہ
کیشے کوئی نہیں فی یو آر ایل، میموری میں کوئی نہیں کوئی نہیں
کی طرف سے فیصلہ کیا پہلے سے طے شدہ صفحہ میں revalidate = N منصوبے میں useCSR = True directive جزو پر
اناج صفحہ صفحہ پروجیکٹ جزو

رینڈرنگ لائف سائیکل

دو حقائق سب سے زیادہ حیرت کی وضاحت کرتے ہیں۔

  1. ایک پروجیکٹ ایک میں ہے۔ موڈ useCSR سرور موڈ (SSR، ISR، جزائر، .nexy، .md، .mdx روٹس) اور کلائنٹ موڈ (فریم ورک روٹس اور کلائنٹ روٹر) کے درمیان انتخاب کرتا ہے۔ دونوں کو ملایا نہیں جا سکتا: دیکھیں سرور موڈ اور کلائنٹ موڈ۔
  2. سرور موڈ کے اندر، موڈ فی ہے صفحہ ایک صفحہ revalidate کے ساتھ محفوظ کیا جا سکتا ہے، دوسرا جزیرہ پکڑ سکتا ہے، تیسرا ایسا نہیں کر سکتا۔

کلائنٹ موڈ اب بھی ایک حقیقی دستاویز بھیجتا ہے: Nexy اسے پہلے جواب کے لیے نوڈ میں پیش کرتا ہے، پھر براؤزر نیویگیشن سنبھال لیتا ہے۔ CSR صفحہ ایک خالی صفحہ نہیں ہے جو بنڈل کا انتظار کر رہا ہے۔

کب استعمال کرنا ہے۔

  • مواد، مارکیٹنگ، دستاویزات: SSR، علاوہ ISR جب مواد شاذ و نادر ہی تبدیل ہوتا ہے۔
  • ایک انٹرایکٹو ویجیٹ کے ساتھ زیادہ تر جامد صفحہ: ایک جزیرے کے ساتھ SSR۔
  • ڈیش بورڈز، ایڈیٹرز، ایپ نما نیویگیشن: CSR۔
  • ایک صفحہ مسلسل پڑھا جاتا ہے اور شاذ و نادر ہی تبدیل ہوتا ہے: ISR۔

کنفیگریشن

موڈ جہاں
ایس ایس آر کہیں نہیں: یہ پہلے سے طے شدہ ہے۔
آئی ایس آر revalidate = 60 صفحہ .nexy کے فرنٹ میٹر میں
سی ایس آر useCSR = True nexyconfig.py میں، useFF سیٹ کے ساتھ
جزائر directive="client:visible" اجزاء کے ٹیگ پر

مثال

src/routes/blog/index.nexy
---revalidate = 60---<h1>Rendered at most once per minute</h1>

فرنٹ میٹر لائن کے بغیر ایک ہی صفحہ SSR ہے۔

src/apps/sales_view.nexy
---from "@/components/Chart.tsx" import Chart---<h1>Rendered on every request</h1><Chart directive="client:visible" />

منظر SSR ہے، اور چارٹ ایک جزیرہ ہے جو اسکرول کرتے وقت ہائیڈریٹ ہوتا ہے۔

حدود

  • کوئی ایس ایس جی نہیں ہے۔ موڈ Nexy HTML کو تعمیراتی وقت پر پیش کرتا ہے (جز HTML، کلائنٹ دستاویزات)، لیکن اسے ہمیشہ سرور کے ذریعے پڑھتا ہے: کوئی برآمدی کمانڈ نہیں، مستحکم طور پر میزبانی کرنے کے لیے کوئی اسٹینڈ فولڈر نہیں۔ منجمد مواد کے لیے، ایک لمبی ونڈو کے ساتھ ISR استعمال کریں۔
  • آئی ایس آر نہیں ہے۔ سی ڈی این۔ کیشے اس عمل میں رہتا ہے جو صفحہ کو پیش کرتا ہے۔ کئی کارکن کئی کیش رکھتے ہیں۔ دیکھیں ISR۔
  • CSR ایک پروجیکٹ ہے۔ فیصلہ آپ ایک صفحہ CSR نہیں بنا سکتے اور باقی SSR رکھ سکتے ہیں۔
  • جزائر جزیرے کو ہائیڈریٹ کرتے ہیں، نہیں۔ صفحہ ایک صفحہ جس کے تمام جزائر ایک دوسرے پر منحصر ہیں ایک CSR صفحہ بھیس میں ہے۔

اگلے اقدامات

  • SSR: پہلے سے طے شدہ
  • ISR: فی یو آر ایل ایک صفحہ کیش کریں۔
  • CSR: براؤزر پر ہینڈ نیویگیشن
  • جزائر: ہائیڈریٹ ون ویجیٹ
  • کارکردگی

GitHub پر ترمیم کریں

Enter نتیجہ کھولتا ہے، Esc بند کرتا ہے۔