Draft.js 编辑器为空

Draft.js editor is empty

如何测试draftjs编辑器内容是否为空?

我现在唯一的想法是与此函数返回的对象进行对象比较:EditorState.createEmpty().getCurrentContent()

只需在 ContentState 上使用 hasText 函数:

editorState.getCurrentContent().hasText()
export const isEmptyDraftJs = (rawState) => {
  if (!rawState || _.isEmpty(rawState)) { // filter undefined and {}
    return true;
  }
  const contentState = convertFromRaw(rawState);
  return !(contentState.hasText() && (contentState.getPlainText() !== ''));
};

我不确定它是否完美,但我使用了上面的代码。

当你只添加图像时,有一个 space 字符,所以 getPlainText() 只能过滤图像 draftJS。

 contentState.hasText() && contentState.getPlainText().length > 0 

检查

  • 白色Space