Проверка ввода 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
к.
Любая помощь или совет очень ценятся, и я могу быстро обновить мой ответ, если вам нужно больше подробностей.