@lerix-dev/lerix-core. تستخدم React أو Next.js أو
Angular؟ راجع React أو
Next.js أو
Angular. ولمعرفة ما يقدّمه التحكم
بالإصدارات وكيف تضبط القواعد في لوحة التحكم، راجع
التحكم بالإصدارات.
الإعداد
يعمل التحكم بالإصدارات افتراضياً مع الشاشات الجاهزة. اضبطrelease لتتمكن قواعد
التحديث من مقارنة الإصدارات:
main.ts
يعمل وضع الصيانة دون
release، ما لم تكن النافذة مقصورة على إصدارات معينة.
ما يراه المستخدمون
- الصيانة: طبقة ثابتة فوق كل ما في الصفحة. لا يمكن النقر على بقية الصفحة ولا التركيز عليها، ويبقى التركيز داخل الطبقة. ويتحقق زر حاول مرة أخرى فوراً.
- التحديث الإلزامي: تعيد الحزمة تحميل الصفحة لتحميل أحدث نشر، مرة واحدة كل 5
دقائق على الأكثر في كل تبويب (يُتتبَّع ذلك في
sessionStorage). وإذا بقيت الصفحة قديمة بعد إعادة التحميل، تبقى رسالة على كامل الشاشة مع زر إعادة التحميل. والنقر على إعادة التحميل يعيد التحميل دائماً، فالحد يسري على إعادة التحميل التلقائية وحدها. وبهذا لا تتسبب ذاكرة تخزين مؤقت قديمة أو CDN في حلقة إعادة تحميل. - الاختياري أو المُوصى به: شريط أسفل الصفحة فيه تحديث (يعيد التحميل) ولاحقاً، وتخطي هذا الإصدار إن كان مسموحاً. يظهر مرة واحدة في كل جلسة تبويب، بعد تحميل الصفحة بقليل.
@lerix-dev/lerix-core/app-control-ui)،
فلا تكلّف شيئاً حتى يلزم عرض شيء. وتتبع خيار locale، أو لغة المتصفح: الإنجليزية،
أو العربية من اليمين إلى اليسار.
كيف تعلم تطبيقات الويب بالتغييرات
لا تتلقى صفحات الويب الإشعار الصامت. تتحقق الحزمة عند التحميل، وعند عودة التبويب إلى الظهور أو عودة اتصال المتصفح (إذا مضى على الإجابة المحفوظة أكثر من 5 دقائق)، وكل دقيقة ما دام التبويب ظاهراً أثناء الطوارئ. راجع وصول التغييرات والعمل دون اتصال.شاشاتك الخاصة
اضبطappControl: { ui: false }، ثم اقرأ الحالة عبر getState() وتابع تغيّرها عبر
subscribe(). للحالة الأجزاء update وmaintenance وsdk، وكل منها null حين
لا ينطبق شيء (الحقول في الحالة).
release-gate.ts
التحقق الآن
refresh() مدة صلاحية الإجابة المحفوظة، فتجلب الحالة وتعيدها.
ومع ui: false لا تحدث إعادة تحميل تلقائية للتحديث الإلزامي: استدعِ openStore()
من زر إعادة التحميل الخاص بك.