Write a Addon
开始编写
TIP提示
约定大于配置
- 插件:
Addon
,须以valaxy-addon-
开头。 - 插件与主题类似,但做的事情更少。
- 一个站点只能使用一个主题,但可以使用多个插件。
- Addon 无需预编译,直接发布源文件即可。
App.vue
如果插件作者希望插件被使用时立刻全局挂载,可以将内容放置于valaxy-addon-<name>/App.vue
中,并设置package.json
中global: true
。components
: 放置于components
文件夹下的组件将会被自动注册,但不会被挂载。用户可以手动加载使用。
文档正在施工中,您可以参照 插件橱窗 一些已有的插件。
创建插件模板
bash
pnpm create valaxy
# choose template addon
使用生命周期钩子
如示例所示,插件可以使用 valaxy.hook
来挂载生命周期钩子。 实现在构建前/后以及其他节点做一些事情。
请参考 生命周期钩子 了解更多。
ts
import consola from 'consola'
import { defineValaxyAddon } from 'valaxy'
import pkg from '../package.json'
export const addonTest = defineValaxyAddon(options => ({
name: pkg.name,
enable: true,
options,
setup(valaxy) {
valaxy.hook('build:before', () => {
// do something before build
consola.info('[valaxy-addon-test] build:before')
})
},
}))
To Be Continued.