返回介绍

钩子

发布于 2021-04-22 14:22:45 字数 2078 浏览 943 评论 0 收藏 0

钩子列表

全局钩子

名称描述
init在生成文档站点前触发.
nav在解析导航 nav.md 后和解析文档前触发
book:before加载 book 页面之前调用
page:before加载 page 文件之前调用
page加载 page 文件之后调用
book加载 book 页面之后调用
finish在生成文档站点完成后触发.

模板钩子

名称描述参数
tpl:header在页面 header 中添加自定义的 html
tpl:mask用于添加遮罩层

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);
		}))
	}
}

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。
列表为空,暂无数据
    我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
    原文