微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

如何使用带有 HTML 值的 RichTextEditor?

如何解决如何使用带有 HTML 值的 RichTextEditor?

我正在尝试在表单中使用 com.vaadin.flow.component.richtexteditor.RichTextEditor,我需要获取和设置 HTML 格式而不是 不是 delta 格式,我还需要使用 getValue()setValue() 以与使用这些方法的表单的所有其他字段保持一致。所以我尝试了这样的事情:

public class HtmlEditor extends RichTextEditor {
  private HasValue<?,String> htmlValue;

  public HtmlEditor() {
    htmlValue = asHtml();
    setThemeName(RichTextEditorVariant.LUMO_COMPACT.getvariantName());
  }

  @Override
  public String getValue() {
    return StringUtils.trimToNull(htmlValue.getValue());
  }

  @Override
  public void setValue(String value) {
    htmlValue.setValue(StringUtils.trimToEmpty(value));
  }


}

但这不起作用,因为 RichTextEditor 本身使用 getValue 和 setValue 直接期望(我猜)delta 格式。

我考虑将 RichTextEditor 包装为一个组合组件,但这对于一个简单且通常需要读写 HTML 的需求来说似乎有点矫枉过正。

有没有简单的解决方案?

解决方法

我不认为有任何内置的东西,不。使用某些自定义转换器可能可行,但“简单”不是正确的词。

编辑:有一个关于此的公开票,如果该功能对您很重要,您可以评论和投票:https://github.com/vaadin/flow-components/issues/1584

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。