React HtmlEditor API

HtmlEditor is a WYSIWYG editor that allows you to format textual and visual content and to output it in HTML or Markdown. HtmlEditor is built on top of and requires the DevExtreme Quill.

import HtmlEditor from "devextreme-react/html-editor"
Selector: HtmlEditor

Configuration

This section describes properties that configure the HtmlEditor UI component's contents, behavior, and appearance.

Name Description
accessKey

Specifies the shortcut key that sets focus on the UI component.

activeStateEnabled

Specifies whether the UI component changes its visual state as a result of user interaction.

allowSoftLineBreak

Allows users to break content into multiple lines within a single block element. The Shift + Enter key combination generates the new line.

customizeModules

Allows you to customize the DevExtreme Quill and 3rd-party modules.

disabled

Specifies whether the UI component responds to user interaction.

elementAttr

Specifies the global attributes to be attached to the UI component's container element.

focusStateEnabled

Specifies whether the UI component can be focused using keyboard navigation.

height

Specifies the UI component's height.

hint

Specifies text for a hint that appears when a user pauses on the UI component.

hoverStateEnabled

Specifies whether the UI component changes its state when a user pauses on it.

imageUpload

Configures the image upload.

isDirty

Specifies whether the component's current value differs from the initial value.

isValid

Specifies or indicates whether the editor's value is valid.

mediaResizing

Configures media resizing.

mentions

Configures mentions.

name

The value to be assigned to the name attribute of the underlying HTML element.

onContentReady

A function that is executed when the UI component is rendered and each time the component is repainted.

onDisposing

A function that is executed before the UI component is disposed of.

onFocusIn

A function that is executed when the UI component gets focus.

onFocusOut

A function that is executed when the UI component loses focus.

onInitialized

A function used in JavaScript frameworks to save the UI component instance.

onOptionChanged

A function that is executed after a UI component property is changed.

onValueChanged

A function that is executed after the UI component's value is changed.

placeholder

Specifies the text displayed when the input field is empty.

readOnly

Specifies whether the editor is read-only.

rtlEnabled

Switches the UI component to a right-to-left representation.

stylingMode

Specifies how the HtmlEditor's toolbar and content field are styled.

tabIndex

Specifies the number of the element when the Tab key is used for navigating.

tableContextMenu

Configures table context menu settings.

tableResizing

Configures table resize.

toolbar

Configures the UI component's toolbar.

validationError

Information on the broken validation rule. Contains the first item from the validationErrors array.

validationErrors

An array of the validation rules that failed.

validationMessageMode

Specifies how the message about the validation rules that are not satisfied by this editor's value is displayed.

validationMessagePosition

Specifies the position of a validation message relative to the component. The validation message describes the validation rules that this component's value does not satisfy.

validationStatus

Indicates or specifies the current validation status.

value

Specifies the UI component's value.

valueType

Specifies in which markup language the value is stored.

variables

Configures variables, which are placeholders to be replaced with actual values when processing text.

visible

Specifies whether the UI component is visible.

width

Specifies the UI component's width.

Methods

This section describes methods that control the HtmlEditor UI component.

Name Description
beginUpdate()

Postpones rendering that can negatively affect performance until the endUpdate() method is called.

blur()

Removes focus from the content field of the editor.

clear()

Resets the value property to the default value.

clearHistory()

Clears the history of changes.

defaultOptions(rule)

Specifies the device-dependent default configuration properties for this component.

delete(index, length)

Deletes content from the given range.

dispose()

Disposes of all the resources allocated to the HtmlEditor instance.

element()

Gets the root UI component element.

endUpdate()

Refreshes the UI component after a call of the beginUpdate() method.

focus()

Sets focus on the content field of the editor.

format(formatName, formatValue)

Applies a format to the selected content. Cannot be used with embedded formats.

formatLine(index, length, formatName, formatValue)

Applies a single block format to all lines in the given range.

formatLine(index, length, formats)

Applies several block formats to all lines in the given range.

formatText(index, length, formatName, formatValue)

Applies a single text format to all characters in the given range.

formatText(index, length, formats)

Applies several text formats to all characters in the given range.

get(componentPath)

Gets a format, module, or Parchment.

getBounds(index, length)

Retrieves the pixel position and size of a selection at a specified location.

getFormat()

Retrieves formatting of the text within the current selection range.

getFormat(index, length)

Gets formats applied to the content in the specified range.

getInstance(element)

Gets the instance of a UI component found using its DOM node.

getLength()

Gets the entire content's length.

getModule(moduleName)

Gets the instance of a module.

getQuillInstance()

Gets the DevExtreme Quill's instance.

getSelection()

Gets the selected content's position and length.

getText(index, length)

Retrieves text content from the HtmlEditor.

insertEmbed(index, type, config)

Inserts an embedded content at the specified position.

insertText(index, text, formatName, formatValue)

Inserts text into the HtmlEditor.

insertText(index, text, formats)

Inserts formatted text at the specified position. Used with all formats except embedded.

instance()

Gets the UI component's instance. Use it to access other methods of the UI component.

off(eventName)

Detaches all event handlers from a single event.

off(eventName, eventHandler)

Detaches a particular event handler from a single event.

on(eventName, eventHandler)

Subscribes to an event.

on(events)

Subscribes to events.

option()

Gets all UI component properties.

option(optionName)

Gets the value of a single property.

option(optionName, optionValue)

Updates the value of a single property.

option(options)

Updates the values of several properties.

redo()

Reapplies the most recent undone change. Repeated calls reapply preceding undone changes.

register(components)

Registers custom formats and modules.

registerKeyHandler(key, handler)

Registers a handler to be executed when a user presses a specific key.

removeFormat(index, length)

Removes all formatting and embedded content from the specified range.

repaint()

Renders the component again without reloading data. Use the method to update the component's markup and appearance dynamically.

reset()

Resets the value property to the initial value.

reset(value)

Resets the value property to the value passed as an argument.

resetOption(optionName)

Resets a property to its default value.

setSelection(index, length)

Selects and highlights content in the specified range.

undo()

Reverses the most recent change. Repeated calls reverse preceding changes.

See Also

Events

This section describes events that the HtmlEditor UI component raises.

Name Description
contentReady

Raised when the UI component is rendered and each time the component is repainted.

disposing

Raised before the UI component is disposed of.

focusIn

Raised when the UI component gets focus.

focusOut

Raised when the UI component loses focus.

initialized

Raised only once, after the UI component is initialized.

optionChanged

Raised after a UI component property is changed.

valueChanged

Raised after the UI component's value is changed.

See Also

Types

Name Description
ContentReadyEvent

The type of the contentReady event handler's argument.

DisposingEvent

The type of the disposing event handler's argument.

FocusInEvent

The type of the focusIn event handler's argument.

FocusOutEvent

The type of the focusOut event handler's argument.

HtmlEditorFormat

Specifies a format of the selected content.

HtmlEditorImageUploadMode

Specifies how the HtmlEditor UI component uploads files.

HtmlEditorImageUploadTab

Specifies the tab's name.

HtmlEditorPredefinedContextMenuItem

Configures context menu items.

HtmlEditorPredefinedToolbarItem

Configures toolbar items.

InitializedEvent

The type of the initialized event handler's argument.

MarkupType

Specifies in which markup language the value is stored.

OptionChangedEvent

The type of the optionChanged event handler's argument.

ValueChangedEvent

The type of the valueChanged event handler's argument.