گروه‌بندی ردیف‌ها، تجمیع، دادهٔ درختی، جزئیات زیر ردیف (master/detail) و خروجی Excel در AG Grid جزو Enterprise هستند: استفاده در محیط عملیاتی به لایسنس تجاری نیاز دارد، و بدون کلید، جدول واترمارک نشان می‌دهد و خطایی در کنسول ثبت می‌کند. جدول دادهٔ Needless UI گروه‌بندی با جمع کل، دادهٔ درختی، جزئیات ردیف و خروجی .xlsx را با مجوز MIT دارد. این راهنما یک اپ Angular را از یکی به دیگری منتقل می‌کند: چه چیزهایی منتقل می‌شوند، چه چیزهایی نه، و کد چگونه تغییر می‌کند.

این راهنما از نام‌های AG Grid 36 استفاده می‌کند. AG Grid 36 از Angular 20 تا 22 پشتیبانی می‌کند؛ Needless UI به Angular 22 نیاز دارد.

چه به دست می‌آورید

AG Grid و جدول دادهٔ Needless UI
قابلیتAG GridNeedless UI
گروه‌بندی ردیف‌ها، با مقادیر تجمیعی و ردیف جمع کلEnterpriseبله: در چند سطح، با جمع، میانگین، کمینه، بیشینه، تعداد یا یک تابع
دادهٔ درختیEnterpriseبله، از ردیف‌های تودرتو
جزئیات زیر ردیف (master/detail)Enterpriseبله: هر قالبی زیر ردیف، حتی یک جدول دیگر
خروجی ExcelEnterprise: استایل‌ها، چند کاربرگ، تصویر و فرمولبله: یک کاربرگ با سلول‌های دارای نوع داده، قالب‌بندی اعداد و ردیف سرستون ثابت با فیلتر
منوی ستون با انتخابگر ستون‌هاEnterpriseبله: مرتب‌سازی، فیلتر، سنجاق، جابه‌جایی، هم‌عرض کردن با محتوا و پنهان کردن هر ستون، و نمایش یا پنهان کردن همهٔ ستون‌ها
مرتب‌سازی بر اساس چند ستون، جستجوی سریع، صفحه‌بندی، انتخاب ردیفCommunityبله
فیلتر ستونCommunity: تا دو شرط که با AND یا OR ترکیب می‌شوندیک شرط برای هر ستون
فیلترهای مجموعه‌ای، چندگانه و پیشرفتهEnterpriseتا حدی: چک‌لیستی از گزینه‌های ستون، نه از مقدارهای موجود در داده‌ها
تغییر اندازه، جابه‌جایی، سنجاق و پنهان کردن ستون‌ها، و ذخیرهٔ وضعیتشانCommunityبله
اسکرول مجازیCommunity: ردیف‌ها و ستون‌هاردیف‌ها
ویرایش سلولCommunity؛ برخی ویرایشگرها با Enterpriseبله، بر اساس نوع ستون، با اعتبارسنجی؛ بدون ویرایشگر سفارشی و بدون واگرد
جدول‌های محوری (pivot)، نمودارهای یکپارچهEnterpriseخیر
کلیپ‌بورد، انتخاب محدودهٔ سلول‌ها، منوی زمینه، نوار وضعیت، نوار کناریEnterpriseخیر
داده از سرورمدل ردیف سمت سرور: Enterprise؛ بارگذاری بلوکی: Communityصفحه‌هایی از سرور شما، با مرتب‌سازی، فیلترها و جستجوی خود سرور؛ بدون گروه‌بندی روی سرور
گروه‌های ستون، کشیدن ردیف‌ها، ردیف‌های سنجاق‌شدهCommunityخیر
فریم‌ورک‌هاReact، Angular 20 تا 22، Vue و JavaScript سادهAngular 22 و React 19

چه چیزی معادل چیست

گزینه‌های AG Grid و معادل‌هایشان در Needless UI
AG Gridجدول دادهٔ Needless UI
<ag-grid-angular>، ثبت ماژول‌ها، LicenseManager.setLicenseKey()<nui-grid>؛ بدون ثبت ماژول و بدون کلید
rowData, columnDefs[(rows)], [columns]
field, headerNameid, header
valueGetter, valueFormatter, cellDataTypevalue، format (گزینه‌های Intl یا یک تابع)، type
cellRendererیک قالب nuiGridCell
pinned: 'left', hidepinned: 'start', hidden
rowGroup در ستون، groupDefaultExpanded[(groupBy)]، فهرستی از id ستون‌ها. گروه‌ها در ابتدا بازند؛ [(collapsed)] آن‌ها را می‌بندد.
aggFunc, grandTotalRowaggregate, totals
treeData با treeDataChildrenFieldchildren: (row) => row.children
masterDetail, detailCellRendererیک قالب nuiGridDetail، و [(details)]
quickFilterText[(search)]
rowSelection, getSelectedRows()selection، و [(selected)]: کلیدهای ردیف‌های انتخاب‌شده
pagination, paginationPageSize[(pageSize)], [(page)], pageSizes
getColumnState(), applyColumnState()[(columnState)]
exportDataAsExcel(), exportDataAsCsv()exportXlsx() یک Blob برمی‌گرداند و exportCsv() متن
cellValueChanged, rowDoubleClicked(cellEdit), (rowActivate)
rowModelType: 'serverSide'mode="server", total, (queryChange)
localeText, enableRtllabels؛ جهت راست‌به‌چپ از dir صفحه پیروی می‌کند

سفارش‌های گروه‌بندی‌شده بر اساس کشور، به هر دو روش

کار از این قرار است: سفارش‌ها بر اساس کشور گروه‌بندی شوند، با جمع هر کشور و یک جمع کل برای همه، خروجی Excel، جستجوی سریع و انتخاب چندتایی. با AG Grid 36، که در آن گروه‌بندی، جمع‌ها و خروجی Excel به Enterprise نیاز دارند:

با جدول دادهٔ Needless UI:

چند چیز متفاوت کار می‌کند. انتخاب، کلیدها یعنی id ردیف‌ها را نگه می‌دارد، پس با رسیدن دادهٔ تازه از بین نمی‌رود؛ هر وقت به خود ردیف‌ها نیاز داشتید، آن‌ها را از روی کلیدها پیدا کنید. گروه‌ها در ابتدا بازند. برچسب هر گروه در اولین ستون نمایان می‌نشیند و جستجو فقط ستون‌های نمایان را می‌خواند؛ پس اگر می‌خواهید جستجو در ستون گروه‌بندی‌شده هم انجام شود، آن را نمایان نگه دارید. و exportXlsx() به‌جای دانلود فایل، خود فایل را برمی‌گرداند: یک کاربرگ از ردیف‌های فیلترشده و مرتب‌شده، بدون ردیف‌های گروه.

اگر به آنچه نیست نیاز دارید

اگر اپ شما به جدول‌های محوری، نمودارها، کلیپ‌بورد و انتخاب محدوده، گروه‌بندی روی سرور یا گروه‌های ستون وابسته است، جدول دادهٔ Needless UI هنوز نمی‌تواند جای AG Grid را بگیرد. برای آنچه لازم دارید یک issue باز کنید. برای بقیهٔ موارد، صفحهٔ جدول داده همهٔ ورودی‌ها، خروجی‌ها و مثال‌ها را دارد.