dynamicIO
تعتبر علامة dynamicIO
ميزة تجريبية في Next.js تسبب استثناء عمليات جلب البيانات في موجه التطبيق (App Router) من التصيير المسبق (pre-renders) ما لم يتم تخزينها مؤقتًا بشكل صريح. يمكن أن يكون هذا مفيدًا لتحسين أداء جلب البيانات الديناميكية في مكونات الخادم (Server Components).
هذه الميزة مفيدة إذا كان تطبيقك يتطلب جلب بيانات حديثة أثناء وقت التشغيل بدلاً من تقديمها من ذاكرة التخزين المؤقت المسبقة.
من المتوقع استخدامها جنبًا إلى جنب مع توجيه use cache
بحيث يتم جلب البيانات أثناء وقت التشغيل افتراضيًا ما لم تقم بتحديد أجزاء معينة من تطبيقك ليتم تخزينها مؤقتًا باستخدام use cache
على مستوى الصفحة أو الوظيفة أو المكون.
طريقة الاستخدام
لتمكين علامة dynamicIO
، قم بتعيينها إلى true
في قسم experimental
بملف next.config.ts
:
import type { NextConfig } from 'next'
const nextConfig: NextConfig = {
experimental: {
dynamicIO: true,
},
}
export default nextConfig
عند تمكين dynamicIO
، يمكنك استخدام وظائف وضبط التخزين المؤقت التالية:
- توجيه
use cache
- وظيفة
cacheLife
معuse cache
- وظيفة
cacheTag
ملاحظات
- بينما يمكن لـ
dynamicIO
تحسين الأداء من خلال ضمان جلب بيانات حديثة أثناء وقت التشغيل، إلا أنها قد تقدم أيضًا تأخيرًا إضافيًا مقارنة بتقديم المحتوى المصدّر مسبقًا.