首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >为什么vaadin-grid不显示链接(锚点)?

为什么vaadin-grid不显示链接(锚点)?
EN

Stack Overflow用户
提问于 2018-09-04 15:44:39
回答 1查看 494关注 0票数 0

我正在尝试在我的Vaadin10,Spring-boot应用程序中有一个包含链接的表列。

我在网格中显示数据,如下所示:

代码语言:javascript
复制
Grid<Person> grid = new Grid<>();
UI.getCurrent().getRouter();

grid.addColumn(
   p -> new Anchor(UI.getCurrent().getRouter().getUrl(
                    PersonView.class, p.getName()),
                   p.getName())).setHeader("Name");
grid.addColumn(p ->   
   p.getProjects().size()).setHeader("#Projects");

grid.setItems(repo.findAll());
add(grid);
setSizeFull();

但是包含链接的网格列只显示Anchor@XXXXXXX之类的文本

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2018-09-04 15:44:39

问题是,列数据被解释为值,而不是组件。您需要告诉网格,它应该使用渲染器,该渲染器显示组件,而不包装组件。

这可以使用ComponentRenderer来完成。

如果您按如下方式修改列,它将正常工作:

代码语言:javascript
复制
grid.addColumn(new ComponentRenderer<>(p -> new Anchor(UI.getCurrent().getRouter().getUrl(
            PersonView.class, p.getName()), p.getName()))).setHeader("Name");
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/52161261

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档