Repolode
remarkablemark

remarkablemark/html-react-parser

HTML 문자열을 Node.js와 브라우저에서 React 요소로 변환하는 HTML-to-React 파서입니다.

스타
2,431
포크
144
열린 이슈
12
마지막 커밋
어제

어떤 프로젝트인가요?

html-react-parser는 HTML 문자열을 하나 이상의 React 요소로 변환하므로, CMS, 데이터베이스 또는 API에서 가져온 마크업을 dangerouslySetInnerHTML을 사용하지 않고 React 컴포넌트 안에서 렌더링할 수 있습니다. 서버(Node.js)와 클라이언트(브라우저) 모두에서 동작하며, UMD 번들로 CDN에서 불러올 수도 있습니다.

parse 함수는 선택적으로 options 객체를 받습니다. replace 옵션을 사용하면 특정 DOM 노드를 직접 만든 React 요소로 바꿀 수 있으며, 자식 요소와 속성을 처리할 때는 domToReact 및 attributesToProps 같은 헬퍼를 사용할 수 있습니다. transform 옵션으로 파싱된 각 요소를 수정할 수 있고, library 옵션을 사용하면 React 대신 Preact나 사용자 지정 UI 라이브러리를 지정할 수 있습니다. 그 밖에 공백을 처리하는 trim, 서버 측 파싱을 위한 htmlparser2 설정, 브라우저 Trusted Types를 위한 trustedTypePolicy 옵션도 제공됩니다.

이 라이브러리는 HTML을 sanitize하지 않으므로 자체적으로 XSS를 방지하지 않습니다. 신뢰할 수 없는 출처의 입력은 sanitize하거나 Content Security Policy와 Trusted Types로 보호해야 합니다.

핵심 기능

  • 01HTML 문자열을 컴포넌트에서 바로 렌더링할 수 있는 React 요소로 변환합니다.
  • 02서버 측 렌더링을 위한 Node.js와 브라우저 모두에서 동작합니다.
  • 03replace 옵션으로 조건에 맞는 DOM 노드를 사용자 지정 React 요소로 바꿉니다.
  • 04transform 옵션으로 변환 후 파싱된 각 요소를 수정합니다.
  • 05library 옵션을 통해 Preact 또는 사용자 지정 UI 라이브러리를 지원합니다.
  • 06공백과 파싱 동작을 제어하는 trim 옵션 및 htmlparser2 설정을 제공합니다.

활용 사례

  • CMS 또는 Markdown 파이프라인에서 가져온 HTML 콘텐츠를 React 앱 안에서 렌더링합니다.
  • 렌더링 중 링크나 이미지 같은 포함된 태그를 React 컴포넌트로 바꿉니다.
  • Node.js 기반 React 애플리케이션에서 HTML 조각을 서버 측 렌더링합니다.

빠른 시작

  1. 1

    npm으로 설치

    npm install html-react-parser --save
  2. 2

    HTML 문자열을 가져와 파싱

사용 전 알아둘 점

  • XSS에 안전하지 않습니다. README에 HTML을 정화하지 않는다고 명시되어 있습니다.
  • 잘못된 HTML을 정화하지 않습니다.
  • htmlparser2 옵션은 서버(Node.js)에서만 작동하며 브라우저에서는 작동하지 않습니다.

토픽

자주 묻는 질문

html-react-parser은(는) 무엇인가요?
HTML 문자열을 Node.js와 브라우저에서 React 요소로 변환하는 HTML-to-React 파서입니다. html-react-parser는 HTML 문자열을 하나 이상의 React 요소로 변환하므로, CMS, 데이터베이스 또는 API에서 가져온 마크업을 dangerouslySetInnerHTML을 사용하지 않고 React 컴포넌트 안에서 렌더링할 수 있습니다. 서버(Node.js)와 클라이언트(브라우저) 모두에서 동작하며, UMD 번들로 CDN에서 불러올 수도 있습니다.
html-react-parser은(는) 무료로 사용할 수 있나요? 라이선스는 무엇인가요?
html-react-parser은(는) MIT 라이선스의 오픈소스입니다. 상업용 제품에 사용하기 전에 라이선스 조건을 확인하세요.
html-react-parser은(는) 아직 유지보수되고 있나요?
활발히 유지보수 중. html-react-parser의 마지막 커밋은 2026년 11월 6일입니다.
html-react-parser은(는) 어디에 사용할 수 있나요?
CMS 또는 Markdown 파이프라인에서 가져온 HTML 콘텐츠를 React 앱 안에서 렌더링합니다. 렌더링 중 링크나 이미지 같은 포함된 태그를 React 컴포넌트로 바꿉니다. Node.js 기반 React 애플리케이션에서 HTML 조각을 서버 측 렌더링합니다.
html-react-parser는 어떻게 설치하나요?
npm으로 설치: npm install html-react-parser --save HTML 문자열을 가져와 파싱
html-react-parser은(는) 어디서 받을 수 있나요?
소스 코드와 설치 방법은 GitHub에 있습니다: https://github.com/remarkablemark/html-react-parser

요약은 프로젝트 README를 바탕으로 AI가 작성했습니다. GitHub 통계는 매일 갱신됩니다.

관련 프로젝트

일상적인 코딩 작업을 위한 작고 독립적으로 가져올 수 있는 마이크로 모듈 400여 개로 구성된, 의존성이 없는 JavaScript 유틸리티 라이브러리입니다.

2.4천163JavaScriptMIT업데이트 지난달