M365Con 2027 – 무료 온라인 컨퍼런스 · 11–22 Jan 2027 · 120 sessions→ m365con.net

블로그 · Mirko Peters

SPFx 솔루션을 처음부터 다시 만들지 마세요: 모든 개발자가 사용해야 할 필수 PnP React 컨트롤 5가지

By ·

SPFx 솔루션을 반복해서 새로 만드는 일을 멈추는 방법을 알아보세요. PnP React 컨트롤과 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]

SharePoint Framework 솔루션을 처음부터 직접 만드는 것은 귀중한 시간과 엔지니어링 리소스를 낭비하는 일입니다. 오픈 소스 PnP React 컨트롤 라이브러리를 활용하면, 개발자는 피플 피커(People Picker)와 파일 피커(File Picker)처럼 프로덕션에 바로 적용할 수 있고 Microsoft 365를 인식하는 컴포넌트를 즉시 통합할 수 있습니다. 이를 통해 웹 파트 제공 속도를 높이고 UI 일관성을 유지할 수 있습니다.

핵심 요약

  • PnP 생태계에 이미 존재하는 표준 기능을 위해 사용자 지정 컴포넌트를 새로 작성하지 마세요.
  • SharePoint와 Microsoft 365를 인식하는 React 컨트롤을 사용하여 코드량을 획기적으로 줄이세요.
  • 기본으로 제공되는 Microsoft 기능을 우선 사용하고, PnP 컨트롤로 대체하며, 사용자 지정 코드는 마지막 수단으로만 작성하세요.
  • 피플 피커, 분류 체계 피커, 목록 보기, 파일 피커, 라이브 페르소나 등 핵심 컨트롤 5가지를 익히세요.
  • 커뮤니티에서 검증된 UI 요소를 활용하여 애플리케이션 성능과 일관성을 개선하세요.

사용자 지정 SharePoint 개발에 숨은 비용

최신 SharePoint Framework(SPFx) 개발에서는 예측 가능한 함정에 자주 빠집니다. 개발자가 사용자 지정 웹 파트에 대한 요구 사항을 받으면, 새 프로젝트 템플릿을 열고 표준 인터페이스 요소를 위해 사용자 지정 TypeScript, CSS, API 상호 작용 계층을 바로 작성하기 시작합니다. 사용자 지정 사용자 선택기, 관리되는 메타데이터 드롭다운, 고급 파일 선택기를 처음부터 만들려면 꼼꼼한 코딩, 테스트, 디버깅에 며칠, 심지어 몇 주가 걸립니다.

엔터프라이즈 소프트웨어 엔지니어링에서는 이런 방식이 대부분 전혀 필요하지 않습니다. 오픈 소스 Microsoft 365 Patterns and Practices(PnP) 커뮤니티는 SPFx 개발자를 위해 특별히 설계된 프로덕션 준비 React 컴포넌트를 수년에 걸쳐 만들고, 테스트하고, 최적화해 왔습니다. 고객 프로젝트마다 바퀴를 새로 발명하는 대신, 숙련된 개발자는 컴포넌트 우선 계층 구조를 따릅니다. 먼저 표준 SharePoint 기능을 사용하고, 다음으로 Microsoft Fluent UI 또는 PnP React 컨트롤로 대체하며, 고유한 비즈니스 로직이 요구될 때에만 사용자 지정 컴포넌트를 전적으로 구축합니다.

모든 SPFx 개발자가 알아야 할 PnP React 컨트롤 5가지

PnP React 컨트롤 라이브러리는 최신 워크플레이스 개발자를 위한 광범위한 도구 모음을 제공하지만, 몇 가지 컴포넌트만으로도 반복되는 엔터프라이즈 요구 사항의 대부분을 해결할 수 있습니다. 다음 SPFx 프로젝트에 이 5가지 컨트롤을 통합하면 개발 시간을 엄청나게 절약할 수 있습니다.

1. 피플 피커(People Picker)

피플 피커는 아마도 기업 인트라넷 개발에서 가장 많이 요청되는 컴포넌트일 것입니다. 작업을 할당하든, 승인을 라우팅하든, 프로젝트 이해관계자를 표시하든, Azure AD 또는 Microsoft Graph를 수동으로 조회하려면 검색 디바운싱, 캐싱, 비동기 요청, 풍부한 프로필 렌더링을 직접 처리해야 합니다. PnP 피플 피커 컨트롤은 이러한 복잡성을 추상화하여, 조직 경계와 디렉터리 권한을 기본적으로 준수하는 바로 사용 가능한 검색 인터페이스를 제공합니다.

2. 분류 체계 피커(Taxonomy Picker)

관리형 메타데이터와 엔터프라이즈 분류 체계는 최신 SharePoint 정보 아키텍처의 핵심입니다. 트리 보기나 용어 집합 선택 인터페이스를 SharePoint 용어 저장소와 깔끔하게 연동하도록 구현하는 일은 금방 골칫거리가 될 수 있습니다. PnP Taxonomy Picker 컨트롤은 용어 저장소 그룹과 용어 집합에 직접 연결되며, 분류 체계 서비스 엔드포인트에 대한 사용자 지정 REST 쿼리 로직 없이도 직관적인 드롭다운이나 모달 선택 환경을 제공합니다.

3. 목록 보기

표 형식의 데이터를 표시하는 일은 비즈니스 애플리케이션에서 늘 필요한 작업입니다. 정렬, 필터링, 페이지 매김 로직을 갖춘 HTML 표를 직접 만드는 대신, PnP List View 컨트롤은 데이터를 인식하는 풍부한 그리드 환경을 제공합니다. 최신 SharePoint 목록 인터페이스의 모양과 느낌을 그대로 반영하므로 사용자 지정 웹 파트가 Microsoft 365 환경의 나머지 부분과 자연스럽게 어우러지며, 프런트엔드 코드베이스도 크게 줄어듭니다.

4. 파일 선택기

SharePoint 문서 라이브러리, 사이트 컬렉션, OneDrive 또는 공개 URL에서 문서를 선택하게 하려면 복잡한 비동기 선택기 API를 다뤄야 합니다. PnP File Picker 컨트롤은 이러한 여러 소스에서의 선택 기능을 하나의 일관된 사용자 인터페이스 구성 요소로 통합합니다. 사용자는 파일을 손쉽게 찾아보고, 업로드하고, 선택할 수 있으며, 개발자는 사용자 지정 모달 대화 상자나 파일 관리 루틴을 직접 작성할 필요가 없습니다.

5. Live Persona

엔터프라이즈 협업은 사용자 컨텍스트에서 힘을 얻습니다. Live Persona 컨트롤을 사용하면 개발자는 사용자 이메일이나 ID만 전달하여 현재 상태 표시, 연락처 정보, 조직도, 그리고 Teams 채팅이나 Outlook 이메일 같은 직접 소통 링크를 포함한 풍부한 사용자 카드를 렌더링할 수 있습니다. 기본적인 데이터 테이블이나 대시보드를 즉시 참여도 높은 상호 작용형 Microsoft 365 환경으로 끌어올려 줍니다.

PnP로 더 나은 애플리케이션 설계하기

PnP React Controls를 도입하면 SharePoint 솔루션을 설계하는 방식이 달라집니다. SPFx 웹 파트를 고립된 사용자 지정 코드 섬으로 다루는 대신, 개발자는 견고한 커뮤니티 구성 요소를 연결하여 프로젝트 관리 대시보드, 리소스 할당 도구, 고객 포털 같은 복잡한 비즈니스 애플리케이션을 조립할 수 있습니다.

이 컨트롤은 기본적으로 SharePoint를 인식하므로 인증 토큰, Graph 요청, 오류 상태를 별도 작업 없이도 안정적으로 처리합니다. 이를 통해 버그가 발생할 수 있는 범위가 크게 줄고, 접근성 표준 준수에 도움이 되며, 향후 업데이트를 위해 프로젝트를 깔끔하고 유지 관리하기 쉬운 상태로 유지할 수 있습니다.

결론

표준 UI 구성 요소를 처음부터 만드느라 스프린트 주기를 낭비하는 일은 그만두십시오. PnP React Controls 라이브러리를 도입하면 운영 환경에 바로 쓸 수 있고, 성능이 뛰어나며, 완성도 높은 SharePoint 솔루션을 훨씬 짧은 시간에 제공할 수 있습니다. 최신 SPFx 아키텍처, 성능 튜닝, 커뮤니티 전문가들의 전략을 더 깊이 알아보려면 M365 FM 팟캐스트에서 Microsoft MVP Siddharth Vaghasia가 출연한 전체 에피소드를 들어보십시오.

자주 묻는 질문

PnP React Controls란 무엇인가요?

PnP React Controls는 SharePoint Framework(SPFx) 개발자가 애플리케이션 구축 속도를 높일 수 있도록 특별히 설계된, 오픈 소스이며 커뮤니티 주도적이고, SharePoint와 Microsoft 365를 인식하는 사용자 인터페이스 구성 요소 모음입니다.

PnP 컨트롤은 Fluent UI와 어떻게 다른가요?

Fluent UI가 표준 버튼이나 텍스트 필드처럼 기본이 되는 원자 단위 디자인 요소를 제공하는 반면, PnP React Controls는 People Picker, Taxonomy Picker처럼 Microsoft 365 환경에 필요한 데이터 조회 로직이 미리 구성된 복합 비즈니스 구성 요소를 제공합니다.

PnP React Controls는 운영 환경에서 바로 사용할 수 있나요?

네. 전 세계 Microsoft 365 Patterns and Practices 커뮤니티와 Microsoft MVP들이 활발히 관리하고 있으며, 이 컨트롤은 전 세계 수천 개의 엔터프라이즈 운영 환경에서 사용되고 있습니다.

PnP React Controls를 사용해도 Pnpjs가 여전히 필요한가요?

네. Pnpjs와 PnP React Controls는 서로 보완하는 역할을 합니다. Pnpjs는 SharePoint와 Microsoft Graph에 대한 데이터 접근 및 API 호출을 단순화하고, PnP React Controls는 그 데이터를 주로 표시하거나 입력받는 UI 구성 요소를 제공합니다.

Entities in this article

React SharePoint Taxonomy Microsoft Fluent UI Microsoft Graph PnPjs SharePoint Framework (SPFx) Microsoft 365 Caching

Related articles

RSS