如何解决如何为不同的模块定义具有相同键的属性?
我想在不同的模块中使用相同的键属性,但值不同。
我在 antora.yml 中定义了属性,但是好像没有办法区分模块。
我该怎么办?
解决方法
antora.yml
中的属性定义对于包含 antora.yml
的组件是全局的。无法将这些属性定位到特定模块。但是它们很容易在使用它们的页面中被覆盖。
例如,如果您在 antora.yml
中定义一个属性:
asciidoc:
attributes:
foo: bar
然后,无论您在组件页面中的何处使用 {foo}
,您都会在生成的 HTML 中看到 bar
。
要在特定页面中覆盖它:
:foo: FOO
当在同一页面上的任何位置遇到 {foo}
属性时,在该定义之后,您会在生成的 HTML 中看到 FOO
。
如果一个模块中有多个页面需要共享相同的定义,则可以将这些定义放入单独的 Asciidoc 文件中,例如 attributes.adoc
。如果将该文件放入模块的 partials
文件夹中,则可以将其包含在任何需要属性定义的模块页面中:
include::partial$attributes.adoc[]
您不必在 attributes.adoc
中定义所有属性,只需为模块重新定义那些属性即可。
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。