【问题标题】:Qute Dynamically created template not able to understand object dataQute 动态创建的模板无法理解对象数据
【发布时间】:2021-02-21 14:36:53
【问题描述】:

我正在使用下面的代码来创建一个动态模板 -

Engine engine = Engine.builder().addDefaults().build();
Template t = engine.parse(" Dear:Your {obj.name}", null, "something");
Body obj = new Body();
obj.name = "ABC";
t.data("obj",obj).render()

我希望亲爱的:你的 ABC 作为渲染的结果。相反,我得到了,亲爱的:你的 NOT_FOUND

如果我执行以下操作,它会按预期工作 -

Template t = engine.parse(" Dear:Your {name}", null, "something"); 
t.data("name",name).render() 

不知何故,当使用 engine.parse 创建 qute 模板时,它们无法将对象理解为数据。 如果我使用与 html 文件注入相同的方式 -

@Inject
Template something;
something.data("obj",obj).render();

这按预期呈现。知道我做错了什么吗?

【问题讨论】:

    标签: quarkus-qute


    【解决方案1】:

    在阅读文档(很少可用)和一些源代码数小时后,我想我终于找到了答案。

    我唯一需要做的就是通过注入而不是创建一个新的实例来使用现有的引擎实例。

    替换-

    Engine engine = Engine.builder().addDefaults().build(); with
    @Inject
    Engine engine;
    

    对我来说很好。

    如果它可以帮助同一条船上的其他人,请在此处发布。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2013-03-31
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2012-06-10
      • 2010-10-03
      • 2023-03-25
      相关资源
      最近更新 更多