logo by @sawaratsuki1004
React
v19.2
تعلم
مرجع
المجتمع
المدونة

هل هذه الصفحة مفيدة؟

في هذه الصفحة

  • Overview
  • القواعد الموصى بها

    react@19.2

  • نظرة عامة
  • Hooks
    • useActionState
    • useCallback
    • useContext
    • useDebugValue
    • useDeferredValue
    • useEffect
    • useEffectEvent
    • useId
    • useImperativeHandle
    • useInsertionEffect
    • useLayoutEffect
    • useMemo
    • useOptimistic
    • useReducer
    • useRef
    • useState
    • useSyncExternalStore
    • useTransition
  • المكونات
    • <Fragment> (<>)
    • <Profiler>
    • <StrictMode>
    • <Suspense>
    • <Activity>
    • <ViewTransition> - هذه الميزة متاحة في أحدث إصدار Canary من React
  • APIs
    • act
    • addTransitionType - هذه الميزة متاحة في أحدث إصدار Canary من React
    • cache
    • cacheSignal
    • captureOwnerStack
    • createContext
    • lazy
    • memo
    • startTransition
    • use
    • experimental_taintObjectReference - هذه الميزة متاحة في أحدث إصدار تجريبي من React
    • experimental_taintUniqueValue - هذه الميزة متاحة في أحدث إصدار تجريبي من React
  • react-dom@19.2

  • Hooks
    • useFormStatus
  • المكونات (Components)
    • Common (e.g. <div>)
    • <form>
    • <input>
    • <option>
    • <progress>
    • <select>
    • <textarea>
    • <link>
    • <meta>
    • <script>
    • <style>
    • <title>
  • APIs
    • createPortal
    • flushSync
    • preconnect
    • prefetchDNS
    • preinit
    • preinitModule
    • preload
    • preloadModule
  • Client APIs
    • createRoot
    • hydrateRoot
  • Server APIs
    • renderToPipeableStream
    • renderToReadableStream
    • renderToStaticMarkup
    • renderToString
    • resume
    • resumeToPipeableStream
  • Static APIs
    • prerender
    • prerenderToNodeStream
    • resumeAndPrerender
    • resumeAndPrerenderToNodeStream
  • React Compiler

  • الإعدادات (Configuration)
    • compilationMode
    • gating
    • logger
    • panicThreshold
    • target
  • Directives
    • "use memo"
    • "use no memo"
  • تصريف المكتبات (Compiling Libraries)
  • React DevTools

  • React Performance tracks
  • eslint-plugin-react-hooks

  • Lints
    • exhaustive-deps
    • rules-of-hooks
    • component-hook-factories
    • config
    • error-boundaries
    • gating
    • globals
    • immutability
    • incompatible-library
    • preserve-manual-memoization
    • purity
    • refs
    • set-state-in-effect
    • set-state-in-render
    • static-components
    • unsupported-syntax
    • use-memo
  • قواعد React (Rules of React)

  • نظرة عامة (Overview)
    • Components و Hooks يجب أن تكون Pure
    • React تستدعي Components و Hooks
    • قواعد Hooks
  • React Server Components

  • Server Components
  • Server Functions
  • Directives
    • 'use client'
    • 'use server'
  • Legacy APIs

  • Legacy React APIs
    • Children
    • cloneElement
    • Component
    • createElement
    • createRef
    • forwardRef
    • isValidElement
    • PureComponent
مرجع API

eslint-plugin-react-hooks - هذه الميزة متاحة في أحدث إصدار RC

يوفر eslint-plugin-react-hooks قواعد ESLint لفرض قواعد React.

يساعدك هذا الإضافة على اكتشاف انتهاكات قواعد React في وقت البناء، مما يضمن أن مكوناتك و hooks تتبع قواعد React للصحة والأداء. تغطي عمليات lint كلاً من أنماط React الأساسية (exhaustive-deps و rules-of-hooks) والمشاكل التي يبلغ عنها React Compiler. يتم عرض تشخيصات React Compiler تلقائيًا بواسطة إضافة ESLint هذه، ويمكن استخدامها حتى لو لم يتبنى تطبيقك المُجمّع بعد.

ملاحظة

عندما يبلغ المُجمّع عن تشخيص، فهذا يعني أن المُجمّع كان قادرًا على اكتشاف نمط بشكل ثابت غير مدعوم أو يخرق قواعد React. عندما يكتشف ذلك، فإنه تلقائيًا يتخطى تلك المكونات و hooks، مع الحفاظ على بقية تطبيقك مُجمّع. هذا يضمن التغطية المثلى للتحسينات الآمنة التي لن تكسر تطبيقك.

ما يعنيه هذا بالنسبة لـ linting، هو أنك لا تحتاج إلى إصلاح جميع الانتهاكات فورًا. عالجها بوتيرتك الخاصة لزيادة عدد المكونات المُحسّنة تدريجيًا.

القواعد الموصى بها

يتم تضمين هذه القواعد في الإعداد المسبق recommended في eslint-plugin-react-hooks:

  • exhaustive-deps - يتحقق من أن مصفوفات التبعية لـ React hooks تحتوي على جميع التبعيات الضرورية
  • rules-of-hooks - يتحقق من أن المكونات و hooks تتبع قواعد Hooks
  • component-hook-factories - يتحقق من دوال الترتيب الأعلى التي تعرّف مكونات أو hooks متداخلة
  • config - يتحقق من خيارات تكوين المُجمّع
  • error-boundaries - يتحقق من استخدام Error Boundaries بدلاً من try/catch لأخطاء الأطفال
  • gating - يتحقق من تكوين وضع gating
  • globals - يتحقق من عدم التعيين/التعديل للمتغيرات العامة أثناء render
  • immutability - يتحقق من عدم تعديل props و state والقيم الأخرى غير القابلة للتغيير
  • incompatible-library - يتحقق من عدم استخدام مكتبات غير متوافقة مع memoization
  • preserve-manual-memoization - يتحقق من الحفاظ على memoization اليدوية الموجودة بواسطة المُجمّع
  • purity - يتحقق من أن المكونات/hooks نقية من خلال التحقق من الدوال غير النقية المعروفة
  • refs - يتحقق من الاستخدام الصحيح لـ refs، وعدم القراءة/الكتابة أثناء render
  • set-state-in-effect - يتحقق من عدم استدعاء setState بشكل متزامن في effect
  • set-state-in-render - يتحقق من عدم تعيين state أثناء render
  • static-components - يتحقق من أن المكونات ثابتة، ولا يتم إعادة إنشائها في كل render
  • unsupported-syntax - يتحقق من عدم استخدام بناء جملة لا يدعمه React Compiler
  • use-memo - يتحقق من استخدام hook useMemo بدون قيمة إرجاع
التاليexhaustive-deps

Copyright © Meta Platforms, Inc
no uwu plz
uwu?
Logo by@sawaratsuki1004
تعلم React
بداية سريعة
التثبيت
وصف واجهة المستخدم (UI)
إضافة التفاعلية
إدارة State
مخارج الطوارئ
مرجع API
React APIs
React DOM APIs
المجتمع
ميثاق السلوك
تعرف على الفريق
المساهمون في التوثيق
شكر وتقدير
المزيد
المدونة
React Native
الخصوصية
الشروط