Проверка ввода React-Draft-WYSIWYG

Я использую функцию проверки в моей форме, которая проверяет, является ли поле пустым или нет. Это работает для обычных полей ввода текста, но не для поля React-Draft-WYSIWYG.

Я хочу проверить, является ли поле WYSIWYG пустым, и если оно есть, отобразить сообщение об ошибке, т.е. this.state.descriptionError

Это мое состояние:

state = {
 name: "",
 description: [],
 nameError: "",
 descriptionError: "",
}

И это мой элемент формы React-draft-WYSIWYG:

<Form>
 <Label>Description</Label>
  <Editor
   editorState={this.state.description}
   toolbarClassName="toolbarClassName"
   wrapperClassName="wrapperClassName"
   editorClassName="editorClassName"
   onEditorStateChange={this.onDescChange} />
    <div>
     {this.state.descriptionError}
    </div>
</Form>

Моя функция проверки выглядит следующим образом:

validate = () => {
    let nameError = "";
    let descriptionError = "";

    if(!this.state.name) {                  // Checks if field is empty
      nameError = "Please enter a name";
    }

    if(this.state.description === "<p></p>↵") {          // The problem
      descriptionError = "Please enter a description";
    }

    if (nameError || descriptionError) {
      this.setState({nameError, descriptionError});

      return false;
    }
      return true;
  };

Работает нормально с name поле, потому что оно равно пустой строке. Но с React-Draft-WYSIWYG это не строка, и поэтому я не уверен, что установить this.state.description к.

Любая помощь или совет очень ценятся, и я могу быстро обновить мой ответ, если вам нужно больше подробностей.

0 ответов

Другие вопросы по тегам