- 钩子
- 钩子列表
- 全局钩子
- 页面钩子
- 模板钩子
- Page Object
- 增加页面内容示例
- 替换 html 示例
- 引用静态文件
- 异步操作
- 钩子列表
钩子
钩子列表
全局钩子
名称 | 描述 | 参数 |
---|---|---|
init |
在生成文档站点前触发. | 无 |
finish |
在生成文档站点完成后触发. | 无 |
nav |
在解析导航 nav.md 后和解析文档前触发 | 无 |
assets |
引用插件静态文件 | 无 |
页面钩子
名称 | 描述 | 参数 |
---|---|---|
page:before |
在创建 html 页面之前调用 | Page Object |
page |
生成 html 页面后调用 | Page Object |
模板钩子
名称 | 描述 | 参数 |
---|---|---|
tpl:header |
在页面导航添加自定义的 html | 无 |
Page Object
{
// 页面类型,支持 md jsx html 三种
type: 'md',
// 页面标题
title: 'string',
// 页面描述信息
description: 'string',
// 页面内容
content: '内容',
prev: '上一页连接',
next: '下一页链接',
releativePath: '相对路径',
srcPath: '源文件路径',
distPath: '生成文件路径'
}
增加页面内容示例
使用 page:before
钩子
{
"page:before": function(page) {
page.content = page.content + "\n Hello YDoc";
return page;
}
}
替换 html 示例
使用 page
钩子
{
"page": function(page) {
page.content = page.content.replace("<b>", "<strong>")
.replace("</b>", "</strong>");
return page;
}
}
引用静态文件
使用 assets
钩子
{
assets: {
dir: './assets',
js: ['app.js'],
css: ['app.css']
}
}
复制当前目录下的 assets 文件夹到文档,并且在每个文件引入 app.js 和 app.css。
异步操作
回调参数返回一个 promise,能够支持异步处理。
Example:
{
"init": function() {
return new Promise((function(resolve) {
setTimeout(function() {
resolve(true);
}, 2000);
}))
}
}