一个插件应该导出一个普通的 JavaScript 对象(#1),如果插件需要接受配置选项,那么它可以是一个返回对象的函数(#2),这个函数接受插件的配置选项为第一个参数、包含编译期上下文的 ctx 对象作为第二个参数。
#1
#2
// #1 module.exports = { // ... }
// #2 module.exports = (options, ctx) => { return { // ... } }
提示
一个 VuePress 插件应该是一个 CommonJS 模块,因为 VuePress 插件运行在 Node 端。
CommonJS 模块