自定义 React 组件
自定义 React 组件
您可以通过添加自定义 React 组件来扩展 Fern 的内置组件库。这允许您创建符合文档需求的独特交互式元素。组件采用服务端渲染,具有更好的 SEO 和性能表现,且不会出现布局偏移。
定义常量
不要使用 React 组件来定义常量。请考虑使用可重用片段。
MDX 中的自定义组件
创建 React 组件
让我们首先创建一个 components 文件夹,您可以在其中定义 React 组件。请注意,React 组件可以在 .ts、.tsx、.js 或 .mdx 文件中定义。
components/CustomCard.tsx
为什么不直接使用自定义 CSS 和 JS?
虽然您可以将 React 组件打包为自定义 JavaScript,但使用 Fern 内置的 React 组件支持提供了几个关键优势:
无布局偏移或闪烁
通过自定义 JavaScript 添加 React 组件时,您无法控制组件相对于页面其他内容的渲染时机。这通常会导致故障行为,组件在主内容加载后异步加载时会出现闪烁或跳跃。
更快的页面加载
自定义 JavaScript 包通常包含自己的 React 库副本,这会:
- 通过重复已包含的 React 代码增加页面加载时间
- 由于多个 React 实例在同一页面上运行而降低性能
- 创建用户必须下载的更大包体积
改进的 SEO
自定义 React 组件采用服务端渲染,完全可被搜索引擎索引,而通过自定义 JavaScript 添加的组件不采用服务端渲染,无法被索引。