انتقل إلى المحتوى
uiify

Table

جدول أصلي بمحوّل تفاعلي اختياري.

المتصفحات
Chrome 123+Firefox 121+Safari 17.5+
الفئة
0
الحجم المضغوط
617 B
ميزانية التخطيط القسري
0 ms
ميزانية axe
0
متوافق مع SSR
نعم
العقد المنشور
بيئة الاختبار

المختبر

Table

مثال جدول أصلي

أعضاء الفريق
الاسمالدورالحالة
Alice Chenمسؤولنشط
Bob Smithمحرّرنشط
Carol Leeمشاهدمدعو
ثلاثة أعضاء · عضوان نشطان

فرز وترشيح وتوسيع

الدورالتفاصيل
Alice Chenمسؤول
Bob Smithمحرّر
Carol Leeمشاهد
عدد الأعضاء: 3 · عدد المحدّدين: 0

ترويسات وتذييل وأعمدة ثابتة

العضو 1محرّرmember1@example.comنشط
العضو 2محرّرmember2@example.comنشط
العضو 3محرّرmember3@example.comنشط
العضو 4محرّرmember4@example.comنشط
العضو 5محرّرmember5@example.comنشط
العضو 6محرّرmember6@example.comنشط
العضو 7محرّرmember7@example.comنشط
العضو 8محرّرmember8@example.comنشط
العضو 9محرّرmember9@example.comنشط
العضو 10محرّرmember10@example.comنشط
العضو 11محرّرmember11@example.comنشط
العضو 12محرّرmember12@example.comنشط
العضو 13محرّرmember13@example.comنشط
العضو 14محرّرmember14@example.comنشط
العضو 15محرّرmember15@example.comنشط
العضو 16محرّرmember16@example.comنشط
العضو 17محرّرmember17@example.comنشط
العضو 18محرّرmember18@example.comنشط
العضو 19محرّرmember19@example.comنشط
العضو 20محرّرmember20@example.comنشط
العضو 21محرّرmember21@example.comنشط
العضو 22محرّرmember22@example.comنشط
العضو 23محرّرmember23@example.comنشط
العضو 24محرّرmember24@example.comنشط
أربعة وعشرون عضوًا

API

Table.Root (native)

الخاصيةالنوعافتراضيالوصف
layout"auto" | "fixed""auto"تخطيط جدول أصلي. يستخدم التحديد والفرز وتوسيع الصفوف نقطة الدخول الصريحة TableClient.
size"sm" | "md" | "lg"—تباعد الخلايا من ورقة الأنماط المختارة.
variant"solid" | "outline" | "ghost"—نمط السطح من ورقة الأنماط المختارة.
renderReactElement | ((props, state) => ReactElement)—استبدل العنصر المعروض مع الحفاظ على توصيلات السلوك وإمكانية الوصول.

Table.Footer

الخاصيةالنوعافتراضيالوصف
stickyboolean—يثبّت التذييل عند نهاية محور الكتل في حاوية التمرير.
renderReactElement | ((props, state) => ReactElement)—استبدل العنصر المعروض مع الحفاظ على توصيلات السلوك وإمكانية الوصول.

Table.RowHeader / Table.Cell / Table.ColumnHeader

الخاصيةالنوعافتراضيالوصف
align"start" | "center" | "end""start"المحاذاة المنطقية للنص في هذه الخلية.
sticky"start" | "end"—يثبّت خلية عند حافة المحور السطري المنطقية. للخلايا الثابتة المتجاورة، عيّن --uiify-table-sticky-offset على كل خلية.
renderReactElement | ((props, state) => ReactElement)—استبدل العنصر المعروض مع الحفاظ على توصيلات السلوك وإمكانية الوصول.

TableClient.ExpandTrigger / TableClient.ExpandedRow

الخاصيةالنوعافتراضيالوصف
rowId*string—مفتاح صف مشترك يصل زر التوسيع بعنصر <tr> الأصلي. ضع <td colSpan={columnCount}> داخل الصف الموسّع.

TableClient.Root — @gunkin/uiify/components/table/client

الخاصيةالنوعافتراضيالوصف
aria-labelstring—اسم الجدول للتقنيات المساعدة، حين لا يوجد عنوان أو وصف مرئي يسمّيه.
aria-labelledbystring—معرّف العنصر الذي يوفّر تسمية الجدول.
selectionMode"none" | "single" | "multiple""none"يحدّد إمكان تحديد الصفوف وعددها في المرة الواحدة؛ يعرض "none" جدولًا ثابتًا عاديًا دون دور grid.
selectionBehavior"toggle" | "replace"—يحدّد إن كان النقر على صف يضيفه إلى التحديد أم يستبدل التحديد الحالي.
defaultSelectedKeysIterable<string>—معرّفات الصفوف المحدّدة مبدئيًا، مع إبقاء التحديد غير متحكّم به داخل المكوّن.
selectedKeysIterable<string>—معرّفات الصفوف المحدّدة حاليًا، ليصبح التحديد متحكّمًا به من الجهة المستدعية.
onSelectionChange(selectedKeys: Set<string>) => void—تُستدعى بمجموعة معرّفات الصفوف المحدّدة الجديدة كلما تغيّر التحديد.
defaultSortDescriptorSortDescriptor | null—العمود واتجاه الفرز المبدئيان، مع إبقاء حالة الفرز غير متحكّم بها داخل المكوّن.
sortDescriptorSortDescriptor | null—العمود واتجاه الفرز الحاليان، ليصبح الفرز متحكّمًا به.
onSortChange(descriptor: SortDescriptor | null) => void—تُستدعى بواصف الفرز الجديد، أو null، عند تفعيل ترويسة عمود قابل للفرز.
expandedKeys / defaultExpandedKeysIterable<string>—مفاتيح الصفوف الموسّعة المتحكّم بها أو المبدئية.
onExpandedChange(keys: Set<string>) => void—تبلّغ عن طلبات التوسيع. وتنتظر الصفوف المتحكّم بها تحديث المفاتيح.
renderReactElement | ((props, state) => ReactElement)—استبدل العنصر المعروض مع الحفاظ على توصيلات السلوك وإمكانية الوصول.

Table.Header

الخاصيةالنوعافتراضيالوصف
stickybooleanfalseيثبّت هذا القسم في حاوية التمرير؛ يستخدم Header بداية محور الكتل، وFooter نهايته.
renderReactElement | ((props, state) => ReactElement)—استبدل العنصر المعروض مع الحفاظ على توصيلات السلوك وإمكانية الوصول.

Table.Body

الخاصيةالنوعافتراضيالوصف
childrenReactNode—صفوف جسم الجدول.
renderReactElement | ((props, state) => ReactElement)—استبدل العنصر المعروض مع الحفاظ على توصيلات السلوك وإمكانية الوصول.

Table.Row

الخاصيةالنوعافتراضيالوصف
id*string—معرّف ثابت للصف يُستخدم مفتاحًا للتحديد ومعرّفًا للعنصر.
disabledbooleanfalseيمنع تحديد الصف أو تركيزه بلوحة المفاتيح.
selectedboolean—يعلّم الصف كمحدّد في بنية HTML المعروضة على الخادم قبل أن يتولى مخزن التحديد المسؤولية.
renderReactElement | ((props, state) => ReactElement)—استبدل العنصر المعروض مع الحفاظ على توصيلات السلوك وإمكانية الوصول.

Table.ColumnHeader

الخاصيةالنوعافتراضيالوصف
id*string—معرّف العمود الذي تشير إليه واصفات الفرز.
allowsSortingbooleanfalseيجعل الترويسة تبدّل فرز عمودها وتكشف aria-sort.
sortDirection"ascending" | "descending" | null—اتجاه الفرز المعروض لهذا العمود، ويُستخدم في بنية الخادم الأولية حين يُسمح بالفرز.
onClickReact.MouseEventHandler<HTMLTableCellElement>—تعمل قبل الفرز؛ ويمنع preventDefault() تغيير الفرز.
childrenReactNode—تسمية الترويسة.
renderReactElement | ((props, state) => ReactElement)—استبدل العنصر المعروض مع الحفاظ على توصيلات السلوك وإمكانية الوصول.

Table.Cell

الخاصيةالنوعافتراضيالوصف
childrenReactNode—محتويات الخلية.
renderReactElement | ((props, state) => ReactElement)—استبدل العنصر المعروض مع الحفاظ على توصيلات السلوك وإمكانية الوصول.

Table.Caption

الخاصيةالنوعافتراضيالوصف
childrenReactNode—نص الوصف الذي يشرح الجدول.
renderReactElement | ((props, state) => ReactElement)—استبدل العنصر المعروض مع الحفاظ على توصيلات السلوك وإمكانية الوصول.

Table.RowSelect

الخاصيةالنوعافتراضيالوصف
rowId*string—معرّف الصف الذي يحدّده مربع الاختيار هذا أو يلغي تحديده.

لوحة المفاتيح

المفتاحالإجراء
Tabتركيز عناصر تحكم الفرز والتحديد والتوسيع في TableClient
Enter / Spaceتفعيل زر الفرز أو التوسيع المركّز؛ وتبديل مربع اختيار
Arrow keysالتنقل بين صفوف الجسم القابلة للتحديد في TableClient

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

يعرض Table الافتراضي عناصر <table> و<caption> و<thead> و<tbody> و<tfoot> الأصلية دون JavaScript على العميل؛ استخدم ColumnHeader وRowHeader لدلالات الترويسات. تضيف نقطة الدخول /client الفرز والتحديد والتنقل بين الصفوف بلوحة المفاتيح والتوسيع المتحكّم به، وتكشفها عبر aria-sort وaria-expanded وaria-controls. ExpandedRow هو <tr> أصلي؛ ضع داخله Cell مع colSpan. ويظل الترشيح والترتيب من مسؤولية المستهلك.

نقاط التنسيق

data-uiify-tabledata-partdata-layoutdata-sizedata-variantdata-stickydata-selecteddata-disabled--uiify-table-sticky-offset
تُرجمت هذه الصفحة آليًا ولم تُراجع بعد.