Припиніть переписувати SPFx: 5 ключових PnP React-контролів, які має використовувати кожен розробник
By Mirko Peters ·
Дізнайтеся, як припинити переписувати рішення SPFx. Розберіться, як PnP React Controls і компоненти спільноти Microsoft 365 прискорюють розробку веб-частин для підприємств.
Automatically translated with AI from the original post. Read the English original
![Cover: Stop Reinventing SPFx- Building Better SharePoint Solutions with PnP React Controls with Siddharth Vaghasia [MVP]](https://d3wo5wojvuv7l.cloudfront.net/t_rss_itunes_square_1400/images.spreaker.com/original/39e91285397053de371efe06eda2fa15.jpg)
Створення власних рішень SharePoint Framework з нуля марнує цінний час і інженерні ресурси. Використовуючи бібліотеку PnP React Controls з відкритим кодом, розробники можуть миттєво інтегрувати готові до продуктивного використання компоненти, що враховують Microsoft 365, як-от People Picker і File Picker. Це прискорює випуск сучасних веб-частин і зберігає узгодженість інтерфейсу.
Головне
- Припиніть писати власні компоненти для стандартних функцій, які вже є в екосистемі PnP.
- Використовуйте React-контроли, які розуміють SharePoint і Microsoft 365, щоб суттєво скоротити обсяг коду.
- Надавайте перевагу готовим функціям Microsoft, далі використовуйте контроли PnP, а власний код пишіть лише як останній засіб.
- Освойте п'ять ключових контролів: People Picker, Taxonomy Picker, List View, File Picker та Live Persona.
- Покращуйте продуктивність і узгодженість застосунків, спираючись на елементи інтерфейсу, перевірені спільнотою.
Прихована ціна власної розробки для SharePoint
Розробка на SharePoint Framework (SPFx) часто потрапляє в передбачувану пастку: розробник отримує вимогу щодо власної веб-частини, відкриває новий шаблон проєкту і одразу починає писати власні шари TypeScript, CSS і взаємодії з API для стандартних елементів інтерфейсу. Створення власного вибору користувачів, випадаючого списку керованих метаданих або розширеного вибору файлів з нуля займає дні, а то й тижні ретельного кодування, тестування та налагодження.
У корпоративній розробці програмного забезпечення такий підхід часто зовсім не потрібен. Спільнота Microsoft 365 Patterns and Practices (PnP) з відкритим кодом роками створювала, тестувала та оптимізувала готові до продуктивного використання React-компоненти, призначені саме для розробників SPFx. Замість того, щоб щоразу винаходити велосипед для кожного клієнтського проєкту, досвідчені розробники дотримуються ієрархії «спочатку компонент»: спочатку використовують стандартну функціональність SharePoint, потім Microsoft Fluent UI або PnP React Controls, а власні компоненти створюють лише тоді, коли цього вимагає унікальна бізнес-логіка.
П'ять PnP React Controls, які має знати кожен розробник SPFx
Хоча бібліотека PnP React Controls пропонує широкий набір інструментів для розробників сучасного робочого простору, кілька компонентів вирішують більшість типових корпоративних завдань. Інтеграція цих п'яти контролів у наступний проєкт SPFx заощадить безліч годин часу розробки.
1. People Picker
People Picker, мабуть, є найчастіше запитуваним компонентом у розробці корпоративних інтранет-порталів. Чи ви призначаєте завдання, маршрутизуєте погодження чи показуєте учасників проєкту, ручний запит до Azure AD або Microsoft Graph вимагає обробки затримки пошуку, кешування, асинхронних запитів і відображення детальних профілів. PnP People Picker абстрагує цю складність і пропонує готовий до використання інтерфейс пошуку, який природно враховує організаційні межі та дозволи каталогу.
2. Taxonomy Picker
Керовані метадані та корпоративні таксономії є основою сучасної інформаційної архітектури SharePoint. Створити інтерфейс вибору з деревоподібним поданням або наборами термінів, який коректно взаємодіє з Term Store у SharePoint, може стати справжньою головоломкою. Компонент PnP Taxonomy Picker під'єднується безпосередньо до груп сховища термінів і наборів термінів та надає зручний випадаючий список або модальне вікно для вибору. При цьому не потрібно писати власну логіку REST-запитів до кінцевих точок служби таксономії.
3. List View
Відображення табличних даних є постійною потребою в бізнес-застосунках. Замість того щоб створювати власні HTML-таблиці з логікою сортування, фільтрації та розбиття на сторінки, компонент PnP List View надає насичену сітку з урахуванням даних. Вона відтворює вигляд і поведінку сучасних списків SharePoint, тож ваші власні веб-частини добре вписуються в середовище Microsoft 365 і суттєво скорочують обсяг фронтенд-коду.
4. File Picker
Дозволити користувачам вибирати документи з бібліотек документів SharePoint, колекцій сайтів, OneDrive або публічних URL означає працювати зі складними асинхронними API вибору. Компонент PnP File Picker об'єднує вибір із кількох джерел в одну цілісну компоненту інтерфейсу. Користувачі можуть легко переглядати, завантажувати та вибирати файли, а розробникам не доводиться писати власні модальні вікна та процедури керування файлами.
5. Live Persona
Корпоративна співпраця тримається на контексті користувача. Компонент Live Persona дає змогу розробникам відображати розгорнуті картки користувачів із індикаторами присутності, контактними даними, організаційними схемами та посиланнями для прямого зв'язку (наприклад, чат у Teams або електронна пошта в Outlook), достатньо передати електронну адресу або ідентифікатор користувача. Це миттєво перетворює звичайну таблицю даних або інформаційну панель на цікавий інтерактивний досвід у Microsoft 365.
Побудова кращих застосунків за допомогою PnP
Використання PnP React Controls змінює підхід до архітектури рішень SharePoint. Замість того щоб розглядати веб-частини SPFx як ізольовані острівці власного коду, розробники можуть створювати складні бізнес-застосунки, наприклад панелі керування проєктами, інструменти розподілу ресурсів і клієнтські портали, поєднуючи готові спільнотні компоненти.
Оскільки ці компоненти нативно враховують специфіку SharePoint, вони надійно обробляють токени автентифікації, запити до Graph і стани помилок одразу після встановлення. Це суттєво зменшує кількість потенційних помилок, забезпечує відповідність стандартам доступності та робить ваш проєкт чистим і легким у супроводі під час майбутніх оновлень.
Висновок
Годі витрачати спринти на створення стандартних UI-компонентів із нуля. Використовуючи бібліотеку PnP React Controls, ви зможете випускати готові до промислової експлуатації, продуктивні та відполіровані рішення SharePoint за частку часу. Щоб глибше зануритися в архітектуру сучасного SPFx, налаштування продуктивності та практичні стратегії роботи зі спільнотою, послухайте повний епізод за участю MVP Microsoft Siddharth Vaghasia у подкасті M365 FM.
Поширені запитання
Що таке PnP React Controls?
PnP React Controls — це набір компонентів інтерфейсу з відкритим кодом, створених спільнотою, які враховують специфіку SharePoint і Microsoft 365. Вони призначені спеціально для розробників SharePoint Framework (SPFx), щоб прискорити створення застосунків.
Чим відрізняються компоненти PnP від Fluent UI?
Fluent UI надає базові атомарні елементи дизайну, як-от стандартні кнопки та текстові поля, тоді як PnP React Controls пропонують складні бізнес-компоненти, наприклад вибір людей і вибір таксономії, попередньо налаштовані з логікою отримання даних, потрібною для середовищ Microsoft 365.
Чи готові PnP React Controls до промислового використання?
Так. Ці компоненти активно підтримуються глобальною спільнотою Microsoft 365 Patterns and Practices та MVP Microsoft, і їх використовують у тисячах корпоративних промислових середовищ по всьому світу.
Чи потрібен мені Pnpjs, якщо я використовую Pnp React Controls?
Так, Pnpjs і Pnp React Controls виконують взаємодоповнюючі ролі. Pnpjs спрощує доступ до даних і викликів API для SharePoint та Microsoft Graph, а Pnp React Controls надають компоненти інтерфейсу, які часто відображають ці дані або збирають їх від користувача.