将 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 />;
}

最好渲染成的效果

文档

相关推荐
YFF菲菲兔几秒前
commitRoot 源码解析
react.js
阡陌Jony1 分钟前
缓存相关学习笔记(一):Service Worker 缓存
前端
假如让我当三天老蒯3 分钟前
前端跨域解决方案(学习用)
前端·javascript·面试
阡陌Jony4 分钟前
关于前端路由中的参数问题的学习(二)
前端
IT_陈寒1 小时前
SpringBoot自动配置这个坑,我踩进去又爬出来了
前端·人工智能·后端
runnerdancer10 小时前
LLM是怎么处理messages数组的,提示词缓存又是什么
前端·agent
陈随易11 小时前
VSCode的Copilot扩展支持接入DeepSeek,Kimi了!
前端·后端·程序员
我不是外星人12 小时前
有了 Harness Engineering ,真的还需要研发工程师吗?
前端·后端·ai编程
IT_陈寒15 小时前
JavaScript的闭包把我坑惨了,说好的内存会自动回收呢?
前端·人工智能·后端
Jackson__16 小时前
分享一个横向滚动案例,带悬停暂停,通用性很强
前端