技术博客的一个重要特点就是需要渲染大量的 数学公式 和 代码片段。普通的 Markdown 渲染器往往无法胜任,这就需要引入一些高级插件。在这篇博文中,我们将探讨这一架构。
我们采用了以下核心库:
react-markdown:React 生态中最流行的 Markdown 解析器。remark-math 与 rehype-katex:用于解析和渲染 LaTeX 数学公式。remark-gfm:支持 GitHub Flavored Markdown(如表格和任务列表)。下面是一个行内公式测试:。
对于复杂的独立公式,使用
$$ 包裹:
这里是一个在 React 中使用钩子(Hook)的示例:
import React, { useState, useEffect } from 'react'; export function Counter() { const [count, setCount] = useState(0); useEffect(() => { document.title = `You clicked ${count} times`; }, [count]); return ( <button onClick={() => setCount(count + 1)}> Click me </button> ); }
优秀的架构并不是一次性设计出来的,而是随着业务需求逐渐演进而来的。
通过
rehype-katex 与本地 Markdown 文件的结合,我们可以非常优雅地实现静态博客与动态互动的完美融合。