Vaadin 10 未在 Spring-Boot 中使用模板

Vaadin 10 is not using templates in Spring-Boot

我正在尝试在 Spring-Boot 应用程序中使用 Vaadin 10 模板。

问题是页面显示时没有使用模板。 页面上未显示模板的任何组件。

我的模板 PersonForm.html 存储在 src/main/resources/META-INF/resources/frontend/src

试图绑定它们的 class 是:

@Route
@Tag("person-form")
@HtmlImport("frontend://src/PersonForm.html")
public class PersonView extends VerticalLayout implements HasUrlParameter<String> {  

    public PersonView() {}

    @Override
    public void setParameter(BeforeEvent event, String parameter) {}
}

把模板放在src/main/resources/META-INF/resources/frontend就对了。对于 Spring-Boot 至少这是默认文件夹。

问题是,使用模板的 class 必须扩展 PolymerTemplate<TemplateModel>

您可以使用自己的模型代替 TemplateModel

这会起作用:

@Tag("person-form")
@HtmlImport("frontend://src/PersonForm.html")
public class PersonView extends PolymerTemplate<TemplateModel> implements HasUrlParameter<String> {

Documentation.