跳到主要内容

CodeHighlighter

一个带语法高亮的代码块组件。

VEF 特有组件。 基于 react-syntax-highlighter 构建。

基础用法

import { CodeHighlighter } from '@vef-framework-react/components';

export default function Demo() {
return (
<CodeHighlighter language="typescript">
{`const greeting = (name: string) => \`Hello, \${name}!\`;`}
</CodeHighlighter>
);
}

显示行号

<CodeHighlighter language="tsx" showLineNumbers>
{`import { Button } from '@vef-framework-react/components';

export default function Demo() {
return <Button type="primary">Click me</Button>;
}`}
</CodeHighlighter>

高亮指定行

<CodeHighlighter
language="typescript"
showLineNumbers
lineProps={[1, 3]}
>
{code}
</CodeHighlighter>

API

PropTypeDefault说明
childrenstringrequired要高亮的代码字符串
languagestring'typescript'编程语言
showLineNumbersbooleanfalse显示行号
startingLineNumbernumber1起始行号
wrapLinesbooleanfalse换行显示
wrapLongLinesbooleantrue长行自动换行而非滚动
classNamestringCSS 类名
styleCSSProperties内联样式
customStyleCSSProperties语法高亮容器的样式
linePropsSyntaxHighlighterProps['lineProps']需要高亮的行