Vaadin TemplateRenderer不渲染bean

Vaadin TemplateRenderer不渲染bean,vaadin,vaadin-grid,vaadin-flow,vaadin10,Vaadin,Vaadin Grid,Vaadin Flow,Vaadin10,我试图使用templaterender将模型传播到前端 userGrid.addColumn(TemplateRenderer.<UserProjection>of( "<user-card" + " userDetail='[[item.userDetail]]'" + " licenses='[[item.licenses]]' " + " test='[[ite

我试图使用
templaterender
将模型传播到前端

userGrid.addColumn(TemplateRenderer.<UserProjection>of(
        "<user-card"
                + " userDetail='[[item.userDetail]]'"
                + " licenses='[[item.licenses]]' "
                + " test='[[item.test]]'"
                + " id='[[item.id]]'"
                + ">"
                + "</user-card>")
        .withProperty("userDetail", user -> user)
        .withProperty("licenses",
                user -> userService.findAllUserLicenses(user.getId()).stream().map(License::new).collect(Collectors.toList()))
        .withProperty("test", UserProjection::getEmail)
        .withProperty("id", UserProjection::getId)
);
userGrid.addColumn(templaterender.of(
""
+ "")
.withProperty(“用户详细信息”,用户->用户)
.withProperty(“许可证”),
user->userService.findAllUserLicenses(user.getId()).stream().map(License::new).collect(Collectors.toList())
.withProperty(“测试”,用户投影::getEmail)
.withProperty(“id”,UserProjection::getId)
);
这是我的模板:

<link rel="import" href="../../bower_components/polymer/polymer-element.html">

<link rel="import" href="../../styles/shared-styles.html">


    <dom-module id="user-card">
        <template>

            <div class="content" on-click="_onClick">
                <div>[[test]] [[id]] [[userDetail.id]] </div>
                <div class="user-details">

                    <h1>[[userDetail.firstName]] [[userDetail.lastName]]</h1>
                    <h3>[[userDetail.email]]</h3>
                </div>
                <dom-repeat items="[[licenses]]">
                    <div class="license">
                        {{item.validTo}}
                    </div>
                </dom-repeat>
            </div>

        </template>
        <script>
            class UserCard extends Polymer.Element {
                static get is() {
                    return "user-card";
                }

                _onClick() {
                    this.dispatchEvent(new CustomEvent('card-click'));
                }
            }

            window.customElements.define(UserCard.is, UserCard);
        </script>
    </dom-module>

[[test]][[id][[userDetail.id]]
[[userDetail.firstName][[userDetail.lastName]]
[[userDetail.email]]
{{item.validTo}}
类UserCard扩展了Polymer.Element{
静态get是(){
返回“用户卡”;
}
_onClick(){
此.dispatchEvent(新建CustomEvent('card-click'));
}
}
window.customElements.define(UserCard.is,UserCard);

用户卡
模板也包含在我使用网格的模板中。我可以成功地显示属性
test
id
,但是我无法使用
userDetail
许可证。谁能告诉我我做错了什么?我正在使用vaadin
13.0.5

您能否尝试将
添加到许可证的
dom repeat
?至少,我找到的所有例子都有。不确定第一个问题,通过(为了测试目的,您可以尝试将
userDetail
重命名为其他名称吗?它是这样工作的吗?),我使用
template
作为
dom repeat
的模板,还将
userDetail
重命名为
superDetail
,并在参数和模板中对其进行了更改,但什么都不起作用。但感谢您的检查我刚刚解决了…这是关于模板中奇怪的命名。我将html属性重命名为
user detail='[[item.userDetail]]],而不是
userDetail='[[item.userDetail]]'
,现在它可以工作了。我忽略了这一点,或者可能只是在vaadin文档中的某个地方提到了这一点。