內容元件
<Markdown>、<Code>、<Diff>、<Spinner> 與 <AsciiFont>。
這些元件在儲存格網格上渲染 Markdown、程式碼、差異和大型文字。
<Markdown>
支援串流的 Markdown。傳入持續增長的字串,影格仍保持穩定。
即時r stream againtsx
const [text, setText] = useState("");useEffect(() => stream.on("token", (t) => setText((s) => s + t)), []);return <Markdown>{text}</Markdown>;<Code>
支援 ts、tsx、json、bash、python、rust、go 等語言的語法醒目提示。
<Code code={source} language="tsx" showLineNumbers maxHeight={12} />| Prop | 說明 |
|---|---|
language | 語言識別碼 |
showLineNumbers | 行號欄 |
highlightLines | 要標色的行 |
maxHeight | 裁切內容並顯示「更多行」頁尾 |
<Diff>
統一格式的差異,或由 { before, after } 計算差異。
即時72×12 · booting Turbolog…tsx
<Diff patch={{ before, after, filename: "app/page.tsx" }} /><Spinner>
樣式:dots、pulse、matrix、line 和 braille(用於終端機;Menlo 沒有點字字形)。暫停時,計時器會停止。
<Spinner variant="dots" label="Building…" /><AsciiFont>
用於標題的大型像素文字。
即時64×11 · booting Turbolog…tsx
<AsciiFont text="▼ TEXT.JS" color="accent" />使用 font="compact" 可切換為 3 行樣式。傳入來自 @textjs/font 的 FIGlet 字型,例如 font={slant},即可顯示 FIGlet 文字。