You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Quarkus Qute多层include模板嵌套调用异常问题咨询

问题根因
  • Qute模板引擎解析片段块({#xxx}这种自定义注入块)时,默认会将当前片段内的子片段块归属到最近的上层{#include}对应的模板,你的代码中{title}块处于{#pageContent}块内部,会被Qute识别为外层mainWebPageTemplate的片段参数,而不是内层modal模板的参数,因此抛出参数不匹配/未识别的异常。
  • 额外需确认:你的webui/bootstrapComponents/modal.html模板路径需和Quarkus默认模板根目录(src/main/resources/templates)的相对路径匹配,且modal模板内部使用{#insert title}接收传入的标题片段。
解决方案

方案1:给嵌套include指定别名(推荐,适用于复杂片段参数)

给内层include的模板设置别名,明确指定片段块的归属,Qute就可以正确识别参数所属的模板,修正后的index.html代码如下:

{#include webui/mainWebPageTemplate}

{#pageContent}

{#include webui/bootstrapComponents/modal as modal}
{#modal.title}Add/Edit Storage Block{/modal.title}
{/include}

{/pageContent}
{/include}

方案2:直接传递字符串参数(更简洁,适用于纯文本参数)

如果你的modal模板的title只是纯文本内容,不需要传递HTML片段,可以直接把参数写在include标签内,不需要单独写片段块:

  1. 先修改modal模板,把原来的{#insert title}默认标题{/}改成直接输出变量{title ?: '默认标题'}
  2. 修正index.html代码:
{#include webui/mainWebPageTemplate}

{#pageContent}

{#include webui/bootstrapComponents/modal title="Add/Edit Storage Block"/}

{/pageContent}
{/include}

内容的提问来源于stack exchange,提问作者Snappawapa

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.09.25 13:15:03