مقتطف كود

CodeSnippet

كتلة كود في React تدعم تبويبات اللغات، أرقام الأسطر، زر النسخ، طي "عرض المزيد"، والنمط المضمن. يبقى الكود من اليسار إلى اليمين في الصفحات العربية.

يستقبل CodeSnippet مصفوفة languages، وتظهر التبويبات عند وجود أكثر من لغة. استخدم maxLines لزر "عرض المزيد"، وCodeSnippetInline للأوامر القصيرة. يظهر الكود دائماً من اليسار إلى اليمين.

متى تستخدمه

استخدم CodeSnippet في وثائق المطورين، بوابات API، وأدلة التكامل. مرر عدة languages لإظهار التبويبات. استخدم maxLines للعينات الطويلة، وCodeSnippetInline للأوامر أو القيم المفردة داخل الجملة.

أمثلة

لغات متعددة

لغة واحدة، بلا أرقام أسطر

قابل للطي مع "عرض المزيد"

أمر مضمن

الخصائص

الخصائص التي يعرفها CodeSnippet. سمات العنصر الأصلي تمر كما هي.

<CodeSnippet>

الخاصيةالنوعالافتراضيالوصف
languagesإلزاميCodeSnippetLanguage[]One entry per language. A single entry hides the tab bar (SDGA single-tab).
valuestringControlled active language.
defaultValuestringUncontrolled initial active language (defaults to the first).
onValueChange(value: string) => void
lineNumbersbooleantrueRender the line-number gutter.
maxLinesnumberCollapse to this many lines with a Show More toggle when exceeded.
renderCode(ctx: { code: string; language: string; }) => ReactNodeEscape hatch: render highlighted code yourself; the active code still drives copy + line count.
onCopy(text: string) => void
copyLabelstring'Copy code'Accessible name for the copy button.
copiedLabelstring'Copied'Live-region text announced after a successful copy.

<CodeSnippetInline>

الخاصيةالنوعالافتراضيالوصف
childrenإلزاميstringThe command text - copied verbatim.
prefixreact.ReactNodeLeading label (e.g. npm) - rendered in gold.
onCopy(text: string) => void
copyLabelstring'Copy code'Accessible name for the copy button.
copiedLabelstring'Copied'Live-region text announced after a successful copy.

إمكانية الوصول

لزر النسخ اسم متاح الوصول، ويعلن الزر نجاح النسخ عبر منطقة حية. يعرض زر "عرض المزيد" aria-expanded.

يظهر الكود داخل <pre> و<code> باتجاه إجباري من اليسار إلى اليمين، مما يحافظ على قراءته الصحيحة داخل المحتوى العربي. تعمل التبويبات بلوحة المفاتيح.