import React, { useState } from 'react'; import { compareHtmlFragments, HtmlFragmentDiff, } from '@x-oasis/html-fragment-diff'; import './index.css'; // 默认示例 const DEFAULT_ORIGINAL = '

Hello World

'; const DEFAULT_FINAL = '

Hello React

'; const App: React.FC = () => { const [originalFragment, setOriginalFragment] = useState(DEFAULT_ORIGINAL); const [finalFragment, setFinalFragment] = useState(DEFAULT_FINAL); const [diffResult, setDiffResult] = useState(null); const [parseError, setParseError] = useState(null); const handleCompare = () => { try { setParseError(null); const result = compareHtmlFragments(originalFragment, finalFragment); setDiffResult(result); } catch (error: any) { setParseError(error.message || '解析失败'); setDiffResult(null); } }; const handleReset = () => { setOriginalFragment(DEFAULT_ORIGINAL); setFinalFragment(DEFAULT_FINAL); setDiffResult(null); setParseError(null); }; return (

HTML Fragment Diff Example

对比两个 HTML 片段,检测 class 增删和文本变更

使用说明:
  • 左侧输入原始 HTML 片段,右侧输入最终 HTML 片段
  • 点击"对比"按钮查看 class 和文本的变更
  • 支持解析第一个根元素的 tagName、classList、textContent 等
HTML 片段输入
原始片段