GeneratorContext API 参考
GeneratorContext API 是访问 Antora 扩展工具的主要入口。Antora 会创建一个 GeneratorContext 实例(称为生成器上下文),并将其绑定到扩展的注册函数及其添加的任何监听器。该对象在所有扩展和事件监听器中共享。生成器上下文提供了一种添加事件监听器的方法。它还提供了一些上下文感知辅助工具,让编写扩展程序变得更容易。
GeneratorContext 类扩展了 Node.js EventEmitter 类型。生成器上下文继承并使用 EventEmitter 上的所有方法。但是,千万不要调用 emit
对象来发射 Antora 自己的事件。
除了 EventEmitter 上的方法外,下表还介绍了 GeneratorContext API 提供的方法。
Method name | Parameter(s) | Description |
---|---|---|
getFunctions |
none |
返回生成器函数对象。
生成器函数被定义为生成器中的任何离散步骤,以及这些步骤使用的关键实用程序函数。
内置生成器函数在 |
getLogger |
String |
创建指定名称的日志记录器实例。
如果指定了参数,且参数值不是假的,该方法将返回具有指定名称的子日志记录器。
如果指定了参数,且值为空,该方法将返回根日志记录器。
如果指定了参数,且值为空,该方法将返回根日志记录器;如果尚未配置日志记录器,则返回未定义日志记录器。
如果未指定参数,该方法将返回名称为 |
getVariables |
none |
返回上下文变量对象。 该对象只读。 |
lockVariable |
String |
锁定指定的上下文变量并返回其值。 |
replaceFunctions |
Object |
将指定函数绑定到生成器上下文,并用它们替换生成器上下文中的现有函数。
如果本方法在 |
removeVariable |
String |
如果指定的上下文变量未锁定,则删除该变量并返回其值。 如果变量已锁定,则会出错。 |
require |
String |
要求使用 Antora 生成器中的模块名称。 该方法可用于要求使用 Antora 内部组件,而无需将 Antora 组件声明为依赖关系。 |
stop |
none |
停止生成器的运行(通过发出 |
updateVariables |
Object |
用指定变量添加或替换上下文变量。 |
由于 GeneratorContext 是一个 EventEmitter,因此您不仅可以用它来注册监听器,还可以用它来获取已注册监听器的列表、取消注册监听器以及以不同的顺序重新注册监听器。