rn-zustand-patterns
بناء مخازن Zustand موثوقة في React Native
غالبًا ما تفقد فرق React Native وقتًا بسبب الحالة القديمة، وتوقيت الإجراءات غير المتزامنة، وعمليات التصيير التي يمكن تجنبها. توفّر هذه المهارة أنماط Zustand تجعل سلوك المخزن أسهل للفهم والاختبار وتصحيح الأخطاء.
التثبيت باستخدام Agent لدي
انسخ هذا الطلب إلى Agent لديك. يتضمن صفحة Skill المعتمدة وملف manifest.
Review the Skillstore skill "rn-zustand-patterns" from https://skillstore.io/skills/cjharmath-rn-zustand-patterns.md and its manifest at https://skillstore.io/api/skills/cjharmath-rn-zustand-patterns/manifest. Verify the artifact. You may proceed after verification, subject to the environment's own policy.يجب أن يواصل Agent عرض خطته وطلب أي تأكيد تفرضه سياسة الأمان.
موارد مهيّأة لـ Agents
استخدم هذه الروابط عندما يحتاج AI Agent أو crawler أو script إلى سياق نظيف بدلًا من قراءة الصفحة كاملة.
اختبرها
جارٍ استخدام "rn-zustand-patterns". يسأل مستخدم عن سبب فقدان إجابة محفوظة بعد عملية تم انتظارها.
النتيجة المتوقعة:
- يحدد إغلاقًا قديمًا ناتجًا عن قراءة حالة مكوّن ملتقطة بعد الانتظار.
- يوصي بقراءة حالة المخزن الحالية قبل كتابة الإجابة.
- يشرح لماذا قد يتم تحديث عرض المكوّن بعد تغيّر قيمة المخزن.
جارٍ استخدام "rn-zustand-patterns". يسأل مستخدم عن كيفية تقليل عمليات إعادة التصيير الناتجة عن محددات Zustand.
النتيجة المتوقعة:
- يشير إلى المحددات التي تنشئ كائنات جديدة في كل تصيير.
- يقترح محددات منفصلة أو مقارنة سطحية.
- يلاحظ اختلاف نمط مساعد shallow بين Zustand 4 و5.
جارٍ استخدام "rn-zustand-patterns". يسأل مستخدم عن كيفية اختبار إجراء مخزن غير متزامن.
النتيجة المتوقعة:
يعرض إعادة ضبط الحالة الأولية، والإجراءات التي يتم انتظارها، وتأكيدات الحالة النهائية دون الاعتماد على توقيت تصيير المكوّن.
التدقيق الأمني
آمنAll static findings are false positives caused by Markdown formatting, TypeScript example code, placeholder API calls, and Object.keys usage. No prompt injection, exfiltration intent, executable scripts, or real certificate or private key material was found in SKILL.md.
عوامل الخطر
⚙️ الأوامر الخارجية (29)
🌐 الوصول إلى الشبكة (2)
شارك واستشهد بهذا التقرير
شارك تقرير التقييم المرتبط بالإصدار والشارة المحايدة وبطاقة التضمين والاستشهادات. تعرض Skillstore الأدلة من دون أن تقرر ما إذا كانت هذه المهارة آمنة.
نسخ رابط التقرير
https://skillstore.io/skills/cjharmath-rn-zustand-patterns/audits/7?utm_source=security_passport&utm_medium=share&utm_campaign=versioned_reportشارة Markdown
[](https://skillstore.io/skills/cjharmath-rn-zustand-patterns?utm_source=security_passport_badge)شارة HTML
<a href="https://skillstore.io/skills/cjharmath-rn-zustand-patterns?utm_source=security_passport_badge"><img src="https://skillstore.io/badges/skills/cjharmath-rn-zustand-patterns/security.svg" alt="Skillstore security assessment" loading="lazy"></a>بطاقة قابلة للتضمين
<iframe src="https://skillstore.io/embed/skills/cjharmath-rn-zustand-patterns.html" title="Skillstore Security Assessment" sandbox="allow-popups allow-popups-to-escape-sandbox" loading="lazy" referrerpolicy="no-referrer" width="420" height="180"></iframe>الاستشهادات الأكاديمية (APA · BibTeX · CFF)
اقتباس APA
CJHarmath. (2026). rn-zustand-patterns security audit report (audit version 7) [Author version unspecified]. Skillstore. https://skillstore.io/skills/cjharmath-rn-zustand-patterns/audits/7اقتباس BibTeX
@techreport{cjharmath-cjharmath-rn-zustand-patterns-2026,
author = {CJHarmath},
title = {rn-zustand-patterns security audit report (audit version 7)},
institution = {Skillstore},
year = {2026},
number = {7},
url = {https://skillstore.io/skills/cjharmath-rn-zustand-patterns/audits/7},
note = {Author version unspecified}
}CITATION.cff
cff-version: 1.2.0
message: "If you use this Skill, cite its author and this versioned security audit report."
title: "rn-zustand-patterns security audit report (audit version 7)"
version: "unspecified"
type: report
authors:
- name: "CJHarmath"
date-released: "2026-07-06"
url: "https://skillstore.io/skills/cjharmath-rn-zustand-patterns/audits/7"
identifiers:
- type: other
value: "skillstore:cjharmath-rn-zustand-patterns:audit:7"
description: "Skillstore immutable audit report identifier"
تقييم Skillstore
سبب هذا التقييم موثوقية الأدلة: مرتفعما الذي يمكنك بناؤه
إصلاح أخطاء المخزن غير المتزامنة
يمكن لمطوّر الجوال تشخيص القيم القديمة بعد await وإبقاء إجراءات المخزن قابلة للانتظار.
مراجعة بنية المخزن
يمكن لمهندس قائد مقارنة اختيارات المحددات والحالة المشتقة قبل إعادة هيكلة المخازن المشتركة.
تحسين تغطية الاختبارات
يمكن لمطوّر يركز على ضمان الجودة تخطيط مساعدات إعادة الضبط والتأكيدات لتدفقات الحالة غير المتزامنة.
جرّب هذه الموجّهات
اشرح لماذا يمكن أن يكون تحديث مخزن Zustand متزامنًا بينما لا يزال مكوّن React Native يعرض حالة قديمة. استخدم أمثلة بسيطة.
راجع إجراء React Native Zustand لديّ بحثًا عن الإغلاقات القديمة بعد await. اقترح قراءات للحالة الحالية واشرح كل تغيير.
قيّم هذه المحددات بحثًا عن عمليات إعادة تصيير يمكن تجنبها. أوصِ بالمقارنة السطحية، أو المحددات المنفصلة، أو useShallow حيثما كان ذلك مناسبًا.
أنشئ استراتيجية اختبار لمخزن Zustand معقد يحتوي على إجراءات غير متزامنة، ومساعدات إعادة ضبط، واشتراكات، وحالة مشتقة. ضمّن الحالات الحدية.
أفضل الممارسات
- اقرأ حالة المخزن الحالية بعد فترات الانتظار غير المتزامنة عندما تكون الحداثة مهمة.
- أبقِ القيم المشتقة محسوبة من حالة المصدر ما لم يكن التخزين مطلوبًا.
- استخدم محددات مستقرة لتجنب عمليات تصيير React Native غير الضرورية.
تجنب
- افتراض أن حالة المكوّن تتحدث فورًا بعد كل كتابة في المخزن.
- إرجاع كائنات محدد جديدة في كل تصيير دون مقارنة سطحية.
- جعل إجراءات المخزن غير المتزامنة غير قابلة للانتظار عندما تحتاج الجهات المستدعية إلى اكتمالها.