返回介绍

回调函数

发布于 2024-10-04 20:04:44 字数 3786 浏览 0 评论 0 收藏 0

回调函数通过自定义回调来增强或改变进程行为的方法。

回调函数全局属性

名称说明参数
init在解析书之后,生成输出页面之前调用。
finish:before在生成输出页面后调用,在复制资源,生成封面之前调用
finish所有操作完成后调用。

页面属性

名称说明参数
page:before在页上运行模板引擎之前调用页面对象
page在输出和索引页面之前调用。页面对象

建议使用 模板 来扩展页面解析。

页对象

{
    // Parser named
    "type": "markdown",

    // File Path relative to book root
    "path": "page.md",

    // Absolute file path
    "rawpath": "/usr/...",

    // Title of the page in the SUMMARY
    "title": "",

    // Content of the page
    // Markdown/Asciidoc in "page:before"
    // HTML in "page"
    "content": "# Hello"
}

添加标题的示例

page:before钩子中,page.contentmarkdown/asciidoc内容。

index.js

{
    "page:before": function(page) {
        page.content = "# Title\n" +page.content;
        return page;
    }
}

替换一些html的示例

在page回调函数中,将page.content中标签替换为

index.js

{
    "page": function(page) {
        page.content = page.content.replace("<b>", "<strong>")
            .replace("</b>", "</strong>");
        return page;
    }
}

异步操作

回调函数可以异步返回。

例如:

{
    "init": function() {
        return writeSomeFile()
        .then(function() {
            return writeAnotherFile();
        });
    }
}

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

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

发布评论

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