Тематична сітка даних React із чудовими функціями, орієнтованими на UX

Вихідний вузол: 1121026

KendoReact може заощадити вам купу часу, оскільки пропонує готові компоненти, які можна відразу використовувати у своїй програмі. Вони виглядають гарно, але, що важливіше, їх легко тематизувати, тож вони виглядають так, як вам потрібно. І я б сказав, що зовнішність навіть не важлива. Існує багато бібліотек компонентів, які зосереджені на візуальних елементах. Ці компоненти вирішують найскладніші проблеми інтерактивності в UI/UX, і роблять це з урахуванням витонченості, швидкості та доступності.

Давайте подивимось на них Сітка даних React компонентом.

Старий <table> елемент є правильним інструментом для роботи з сітками даних, але таблиця не пропонує більшість функцій, які забезпечують a добре досвід перегляду даних. Якщо ми використовуємо KendoReact <Grid /> компонент (і друзі), ми отримуємо абсолютну масу додаткових функцій, будь-яка з яких є нетривіальною для гарного виконання, і всі разом створюють надзвичайно переконливе рішення. Давайте переглянемо список того, що ви отримуєте.

Сортовані стовпці

Ви, безперечно, виберете порядок за замовчуванням для своїх даних, але якщо будь-який певний рядок даних містить такі речі, як ідентифікатори, дати чи імена, цілком ймовірно, що користувач захоче відсортувати стовпець за цими даними. Можливо, вони хочуть переглянути найстаріші замовлення або замовлення найвищої загальної вартості. HTML не допомагає впорядковувати таблиці, тому це ставки таблиці (розумієте?!) для бібліотеки JavaScript для сіток даних, і тут це ідеально обробляється.

Пагінація та обмеження

Коли у вас є більше ніж, скажімо, кілька десятків рядків даних, зазвичай ви хочете розбити їх на сторінки. Таким чином, користувачам не доведеться так довго прокручувати сторінку, і, що не менш важливо, це забезпечує швидкість перегляду сторінки, не роблячи DOM надто величезним. Однак одна з проблем із розбивкою на сторінки полягає в тому, що вона ускладнює такі речі, як сортування! Ви не можете просто відсортувати 20 рядків, які бачите, очікується, що буде відсортовано весь набір даних. Звичайно, це обробляється в компоненті Data Grid KendoReact.

Або, якщо розбиття сторінок вам не подобається, сітка даних пропонує віртуалізоване прокручування — у напрямках стовпців і рядків. Це приємний штрих, оскільки дані завантажуються швидко для плавного природного прокручування.

Рядки, що розгортаються

Сітка даних може містити купу даних, видимих ​​у самому рядку, але може бути ще більше даних, які користувач може захотіти викопати із запису, коли він його знайде. Можливо, це дані, які не потребують перехресних посилань так само, як дані стовпців. Зробити це може бути складно через спосіб розміщення клітинок таблиці. Дані все ще пов’язані з одним рядком, але часто потрібно більше місця, ніж пропонує ширина однієї комірки. За допомогою компонента KendoReact Data Grid ви можете передати a detail prop з довільним компонентом React, щоб показати, коли рядок розгорнуто. Супер гнучкий!

Зверніть увагу, як розширені деталі можуть мати власні <Grid /> всередині!

Чуйний дизайн

Мабуть, найважча річ, з якою можна впоратися <table> дизайни, як відобразити їх на маленьких екранах. Зменшення масштабу не є дуже хорошим UX, так само як і згортання таблиці в щось не схоже на таблицю. Головна особливість мереж даних полягає в тому, що всі вони різні, і ви найкраще знатимете, що дані найважливіші для ваших користувачів. Компонент KendoReact Data Grid допомагає в цьому, роблячи вашу сітку даних прокручуваною/прокручуваною, а також маючи можливість блокувати стовпці, щоб переконатися, що їх легко знаходити та робити перехресні посилання.

Фільтрація даних

Можливо, це моя улюблена функція лише через те, наскільки вона орієнтована на UX. Уявіть, що ви дивитеся на велику мережу даних із замовленнями та запитуєте: «Дайте мені переглянути всі замовлення від White Clover Markets». З функцією фільтрації, можливо, ви швидко вводите «конюшина» у вхід фільтра, і альт, усі ці замовлення тут же. Це надзвичайно складно, коли ви також підтримуєте впорядкування та розбивку на сторінки — тому чудово, що всі ці функції працюють разом.

Групування даних

Тепер ця функція трохи вразила мене 🤯. І фільтрація, і сортування дуже корисні, але в деяких випадках вони залишають бажати кращого. Наприклад, легко відфільтрувати занадто далеко і занадто швидко, залишаючи дані, які ви переглядаєте, дуже обмеженими. А за допомогою сортування ви також можете спробувати переглянути підмножину даних, але ваш мозок повинен визначити, де ці дані починаються і де закінчуються. За допомогою групування ви можете наказати сітці даних чітко групувати разом речі, які є для вас найважливішими, але потім все ще використовувати фільтрацію та сортування на додаток до цього. Це миттєво робить дослідження даних легшим і кориснішим.

Локалізація

Ось тут можна сказати, що KendoReact вийшов на повну потужність. Було б дуже прикро вибрати якусь бібліотеку компонентів, а потім усвідомити, що вам потрібна локалізація, і усвідомити, що вона створена не для того, щоб бути першокласним громадянином. Ви уникнете всього цього за допомогою KendoReact, який ви можете побачити в цьому компоненті Data Grid. У демонстраційній версії ви можете змінити англійську на іспанську за допомогою простого спадного меню та переглянути всі дати локалізовані. Ви виконуєте будь-який переклад і локалізацію за допомогою <LocalizationProvider> та <IntlProvider>, обидві зручні концепції React.

Експорт в PDF або Excel

Ось демонстрація цього в реальному часі:

Давай зараз! це так дуже прохолодно.

Це ще не все ...

Перегляньте документи для React Data Grid. Є ще купа функцій, до яких ми тут навіть не дійшли (закріплення рядків! редагування клітинок!). І ось дещо, щоб полегшити ваш розум: цей компонент і всі компоненти KendoReact підтримують клавіатуру та відповідають стандартам доступності Розділу 508. Це не малий подвиг. Коли компоненти настільки складні та включають стільки інтерактивності, отримати правильну доступність важко. Тож ви не лише отримуєте гарні компоненти, які працюють скрізь, ви отримуєте багаті інтерактивні компоненти, які забезпечують UX понад те, про що ви можете навіть подумати, і все це робиться швидко та доступно. Це досить нереально, насправді.

Джерело: https://css-tricks.com/a-themeable-react-data-grid-with-great-ux-focused-features/

Часова мітка:

Більше від CSS-хитрощі