将 Markdown 文件导入为 React 组件 - 写作文档,即时获取交互式演示

我最近将 react-code-view 进行了重写, 基于 unplugin 让 Markdown 可以直接导入渲染成一个 React 组件. 以下是一个简单示例

1.安装

sql 复制代码
npm install @react-code-view/react @react-code-view/unplugin

2.配置构建工具(支持 vite/webpack/esbuild/rollup)

javascript 复制代码
// vite.config.js
import { defineConfig } from 'vite';
import react from '@vitejs/plugin-react';
import reactCodeView from '@react-code-view/unplugin/vite';

export default defineConfig({
  plugins: [
    react(),
    reactCodeView() // Enable markdown import
  ]
});

3.使用有代码块创建 Markdown 文件

demo.md

xml 复制代码
# Counter Example


A simple counter to demonstrate live code editing and preview.


<!--start-code-->
\`\`\`jsx
const App = () => {
  const [count, setCount] = useState(0);
  return (
    <button onClick={() => setCount(c => c + 1)}>
      Clicked {count} times
    </button>
  );
};

render(<App />);
\`\`\`
<!--end-code-->

- Click "Show Code" to view and edit the source
- Preview updates instantly while you type
- Click the copy button to reuse the code

4.导入并使用

tsx 复制代码
import Demo from './demo.md';

function App() {
  return <Demo />;
}

最好渲染成的效果

文档

相关推荐
新中地GIS开发老师1 小时前
WebGIS开发学生作品|低空航天管理与航线规划系统
前端·javascript·webgis·三维gis开发
用户059540174461 小时前
大模型对话记忆持久化踩坑实录:用 Playwright 自动化测了 300 次,终于揪出会话丢失的真凶
前端·css
丙氨酸長鏈1 小时前
Web前端入门第 问:JavaScript 一个简单的 IndexedDB 数据库入门示例
前端·javascript·数据库
kyriewen2 小时前
面试官让我手写虚拟列表——AI生成的版本,快速滚动几下就白屏了
前端·javascript·面试
IT_陈寒2 小时前
Vite热更新失效?你可能漏了这个配置
前端·人工智能·后端
梅孔立3 小时前
两种免费的翻译API调用方式详解 - Edge官方API与个人缓存服务
前端·缓存·edge
Revolution613 小时前
React 组件重新渲染时,到底重新执行了什么
前端·react.js·面试
林焱_RPAAI3 小时前
影刀RPA技术深度:CSS选择器高级实战指南——伪类属性选择器与性能对比完全解析
vue.js·react.js
用户2181697049304 小时前
Flutter(四)Dart语法 空安全 运算符 流程控制
前端
许彰午4 小时前
政务督办的分合模式:主办协办的并发审批
前端·javascript·政务