Vite 插件钩子
- resolveId:自定义模块解析逻辑
- load:返回模块内容
- transform:转换代码
- buildStart/buildEnd:构建生命周期
插件骨架
import { marked } from "marked";
export function markdownPlugin() {
return {
name: "vite-plugin-markdown",
transform(code, id) {
if (!id.endsWith(".md")) return null;
const html = marked(code);
return {
code: `export default ${JSON.stringify(html)}`,
map: null
};
}
};
}使用方式
// vite.config.js
import { markdownPlugin } from "./plugins/markdown";
export default { plugins: [markdownPlugin()] };