Vaadin - TypeError: window.Vaadin.Flow.clients[j] is undefin



所以,当我在网格组件中引入这段代码时,错误出现了:

new ComponentRenderer<>(Button::new, (button, plotno) -> {
button.setIcon(new Icon(VaadinIcon.TRASH));
button.addClickListener(e -> {
this.usunPlotno(plotno);
});

知道发生了什么事吗?由于

在更大的范围内:

addColumn(Material::getId).setHeader("Lp: ");
addColumn(Material::getWysokoscCm).setHeader("Wysokość: ");
addColumn(Material::getCenaZl).setHeader("Cena: ");
addColumn(
new ComponentRenderer<>(Button::new, (button, plotno) -> {
// button.setText("usun");
button.setIcon(new Icon(VaadinIcon.TRASH));
button.addClickListener(e -> {
this.usunPlotno(plotno);
Notification.show("material clicked");
});
})
).setHeader("Usuń:");

这是在类的构造函数中扩展Grid组件的样子。当我删除提到的ComponentRenderer时,它不会给我一个错误,但当然代码不工作…

我会推荐以下内容(注意我不知道plotno究竟来自哪里,所以我只是猜测您在Materialbean中有getPlotno。这里的重点是我认为你使用组件渲染器的方式是错误的。

new ComponentRenderer<>(material -> {
Button button = new Button("usun")
button.setIcon(new Icon(VaadinIcon.TRASH));
button.addClickListener(e -> {
this.usunPlotno(material.getPlotno());
return button;
});

相关内容

最新更新