我想做的事情非常简单:在TextField
或TextArea
中呈现html标签。
但是经过长时间的谷歌搜索后,我很惊讶地发现Vaadin似乎不支持它。VaadinComboBox
或ListBox
提供了.setRender()
方法来以任何形式呈现内容我想要的方式。但是TextField
或TextArea
没有这样的功能。我想知道有什么办法吗?
Vaadin TextField
支持自定义主题,但在渲染时不起作用。
textArea.addThemeVariants(TextAreaVariant.MATERIAL_ALWAYS_FLOAT_LABEL);
答案 0 :(得分:1)
TextField和TextArea是用于编辑纯文本的字段。
如果要显示html内容,则Flow中有Html component可以做到这一点。
如果您要编辑html内容,则可以单独使用RichTextEditor。
此外,如果您允许用户输入html,请记住先清理html,然后再显示,例如Jsoup以避免出现xss,即JavaScript注入问题。