welives / vitepress-code-preview

一款给 vitepress 文档中嵌入的 Vue 示例代码增加演示功能的插件, 支持 SFC, JSX, TSX
https://welives.github.io/vitepress-code-preview/
MIT License
15 stars 4 forks source link

引入插件报错,不支持require导入 #11

Open AutumnFishs opened 2 months ago

AutumnFishs commented 2 months ago

大佬,在创建的docs/vite.config.ts中,引入插件就会报错 import { defineConfig } from 'vite' import vueJsx from '@vitejs/plugin-vue-jsx' import { viteDemoPreviewPlugin } from '@vitepress-code-preview/plugin' export default defineConfig({ plugins: [viteDemoPreviewPlugin(), vueJsx()], })

报错如下,vite不支持require导入unified文件 The CJS build of Vite's Node API is deprecated. See https://vitejs.dev/guide/troubleshooting.html#vite-cjs-node-api-deprecated for more details. failed to load config from C:\Users\qq305\Desktop\vitepress\docs\vite.config.ts failed to start server. error: require() of ES Module

然后配置改成type:“module”,虽然不报错, 但是要么代码出不来,只能渲染组件,要么就只能渲染代码,组件展示不出来

welives commented 2 months ago

看了你的项目中的代码,你的容器标识使用方式不对 :::demo 这三个冒号和demo之间不能有空格, 必须连起来 如果你项目中出现的这个空格不是你自己手抖输入的话, 那你就要检查一下是用了哪款代码美化插件在进行格式化时所导致的

另外还有在 theme/index.ts中不需要重复注册组件, 我的那个useComponents 其实就是封装了app.component方法而已

app.component('MButton', MButton)
useComponents(app, MButton, MButton.name)
AutumnFishs commented 2 months ago

谢谢大佬